Skip to main content

Full text of "MSX Magazine 1-25"

See other formats


La Guía Lotus Para Utilizar Symphony 




CARACTERISTICAS: 

* Páginas: 443 

* Papel offset: 112 grs. 

* Tamaño: 182 x 232 mm. 

* Encuademación: Rústica-cosido 



LA GUIA LOTUS PARA UTILIZAR SYMPHONY 

es un libro que le enseñará paso a paso, y de 
una forma muy práctica cómo utilizar este 
programa. 

LA GUIA LOTUS contiene: 

— Cómo crear y manejar ficheros 

- Descripción detallada de las facilidades 
que ofrecen las ventanas de SYMPHONY. 

- Apéndice que cubre las aplicaciones adi- 
cionales que van incluidas en el programa. 

— Un índice detallado y un vocabulario don- 
de fácilmente podrá encontrar cualquier 
tema que necesite. 



El complemento indispensable para el manual de SYMPHONY 
OFERTA DE LANZAMIENTO 4,500 PTAS. (IVA INCLUIDO) 

Recorte y envíe HOY MISMO este cupón a: ÍllfOÚlS,S.3. c/ Bravo Murülo, 377 - 28020 MADRID 

CUPON DE PEDIDO 



TAMBIEN 
LO PUEDE 
ADQUIRIR 
EN SU LIBRERIA 
HABITUAL 


SI Envíenme el libro «LA GUIA LOTUS PARA UTILIZAR SYMPHONY» al 
precio de 4.500 PTAS. EL IMPORTE lo abonaré: 

Con tarjeta de crédito VISA □ INTERBANK □ AMERICAN EXPRESS □ 
CONTRAREEMBOLSO □ ADJUNTO CHEQUE □ 

Número de mi tarjeta 

Fecha de caducidad Firma 
NOMBRE 




DIRECCION 

CIUDAD C P 




PROVINCIA TFI FF n NO 



DIRECTOR: 

Juan Arencibia. 
COLABORADORES: 

Angel Zarazaga, Teresa Aranda, 

Ricardo García. 

DISEÑO: 

Benito Gil. 
Editada por: 

PUBLINFORM ATICA, S.A. 

C/ Bravo Murillo, 377 -5.° A 
Tel.: 733 71 13 
28020 Madrid. 
Telex 488877 OPZXE 
PRESIDENTE: 
Fernando Bolín. 
DIRECTOR EDITORIAL 
REVISTAS DE USUARIOS: 
Juan Arencibia. 
DIRECTOR DE VENTAS: 
Antonio González. 
JEFE DE PRODUCCION: 
Miguel Onieva. 
SERVICIO AL CLIENTE: 
Julia González. 
Tel.: 733 79 69 
DIRECCION, REDACCION 
Y ADMINISTRACION: 
C/ Bravo Murillo, 377 -5.° A 
Tel.: 733 74 13 
28020 Madrid. 
COORDINADORA 
DE PUBLICIDAD: 
Silvia Bolín. 

PUUBLICIDAD EN MADRID: 

Emilio García. 

PUBLICIDAD EN BARCELONA: 

Lidia Cendros. 
C/ Pelayo, 12. 

Tel.: (93) 301 47 00 Ext. 27-28 

08001 Barcelona. 

Depósito Legal: M. 16.755-1985 

Impreso en G. Velasco, S.A. 

C/ Antonio Cabezón, 13. Madrid. 

Distribuye: 

S.G.E.L. Avda. Valdelaparra, s/n. 
Alcobendas (Madrid). 
DISTRIBUIDORES: 

VENEZUELA: SIPAM, S.A. 

Avda. República 
Dominicana, 541 

ARGENTINA: DISTRIBUIDORA 

INTERCONTINENTAL 
BUENOS AIRES. 



El P.V.P. para Ceuta, Melilla y 
Cananas, incluido servicio aéreo 
será de 300 ptas. sin I.V.A. 



SUSCRIPCIONES 
Rogamos dirija toda la 
correspondencia relacionada con 
suscripciones a 
MSX 

EDISA Tel. 415 97 12 

C/López de Hoyos, 141 5 0 

28002 MADRID 

(Para todos los pagos reseñar 

solamente MSX) 

Para la compra de ejemplares 

atrasados dir¡|anse a la propia 

editorial 

MSX 

C/Bravo Murillo 377 5 ° A 

Tel 733 74 1 3 28020 MADRID 



Si deseas colaborar en MSX remite tus 
artículos o programas a Bravo Murillo 
377 .5 ° A 28020 Madrid Los programas 
deberán estar grabados en cassette y los 
artículos mecanogratiados 

A efectos de remuneración, se analiza 
cada colaboración aisladamente, estu 
diando su complejidad y calidad 




Cuando en un país como Inglaterra, casi totalmente 
cerrado a los ordenadores japoneses y más cuando se 
trata de un MSX, aparece una compañía de software, en 
este caso Mirrorsoft, dispuesta a lanzar sus productos tanto allí 
como en nuestro país, significa que existe una importante lucha 
por hacerse con una parte del mercado de los ordenadores 
domésticos. Esto, es un gran avance para el estándar, ya que 
aquel mercado es conocido por su total dedicación a los Alus- 
trad y Sinclair, lo que significa que MSX sigue defendiéndose 
bastante bien. 

Mirrorsoft, una empresa conocida en el ámbito del software 
para otros ordenadores, ha adquirido dos compañías america- 
nas, fortaleciendo así su presencia en los mercados internacio- 
nales y dando un importante paso en el apoyo al estándar. 

Por otro lado, este mes ha sido una gran noticia la aparición 
del Spectravideo X'press 16. Puede ser, como suele decirse, el 
arma definitiva tanto de esta empresa como para el mercado de 
los ordenadores personales. La batalla está por empezar, puesto 
que estamos ante un ordenador que, con un precio muy compe- 
titivo (109.500) pts.), es compatible PC y posee además, el chip 
de sonido y de gráficos de los ordenadores MSX de la II genera- 
ción, con lo cual adquiere una potencia fuera de lo corriente. 
También cuenta con unas pequeñas sorpresas que contaremos 
en número venideros. 

Por último, destacar que el tema de portada versa sobre la 
compatibilidad de la norma MSX. Es un tema, sobre el cual se 
han vertido auténticos ríos de tinta, sin haber entrado en la pro- 
fundidad que este tema requiere. Hemos procurado llegar al 
fondo del problema y parece que no es una cuestión técnica la 
que provoca incompatibilidad entre los ordenadores. Va más 
allá, la incompatibilidad viene de no respetar lo que en principio 
era obligado, las características técnicas a la que todos y cada 
uno de los ordenadores están sujetos. 




MSX 3 




Noticias. Nuevo Spectravideo 
X'press 16. Mirrorsoft, una com- 
pañía inglesa que está dando 
que hablar... 



Compatibilidad ¿verdad 

O mentira? Se han volcado 
auténticos ríos de tinta sobre este- 
espinoso tema. ¿Hasta qué pun- 
to son compatibles los MSX? 
¿Son realmente compatibles o 
existe alguna cualidad misterio- 
sa? 






Libros. Estadística. Teoría, pro- 
blemas y aplicaciones en BASIC 
e Introducción al MSX LOGO, dos 
libros muy completos e intere- 
santes que permitirán sacar del 
ordenador el máximo rendimien- 
to posible. 




Software. El mercado se está 
situando a niveles altos. Prueba 
de ello, son los programas que 
comentamos este mes. The Goo- 
nies. Livingstone, supongo. Sa- 
mantha Fox. Spitfire 40. Cosa 
Nostra. Dynamite Dan. Finders 
Keepers y Fernando Martín. 




Programa. Estática de flui- 
dos. Una aplicación muy práctica 
para los estudiantes de Físicas. 




Aplicaciones Matemáti- 
cas. Como obtener el máximo 
rendimiento del ordenador, con 
sólo conocer las matemáticas 
más elementales. 





Programa. Ecología de 

Campo. No podía faltar un 
programa, que además de reunir 
las características de las aplica- 
ciones sea, además, una herra- 
mienta de trabajo para los cientí- 
ficos «de a pie». 




Programa. Reloj Digital. 

Interesante manera de controlar 
el tiempo frente al ordenador. 




SVI-31 8/328. El cassette y la 
salida directa al altavoz. Para los 
interesados en este ordenador, 
este mes les dedicamos la sec- 
ción a este popular periférico y al 
control del altavoz. 




Compro, vendo, cambio. Código Máquina. Explica 
Donde vuestras transacciones mos detenidamente una rutina 
tienen su lugar. Este mes la am- para buscar pokes y emplearlos, 
pliamos para dar cabida más 
lectores. 




Rincón del Lector. Todos 

los problemas tienen solución. 
En esta sección responderemos 
a todas ellas. 

MSX 5 



El nuevo del 


Esta compañía ha iniciado una 
ofensia en aquel país que, poco a 
poco, llegará hasta nosotros. Prueba 
de ello, son los primeros programas 
que comentamos en nuestras pági- 
nas de este mes (aunque Dynamite 
Dan ya es conocido). Además de in- 
troducirse en el mercado del soft- 




Barrio; 




Mirrorsoft 


ware para MSX, también lo está ha- 
ciendo en el mercado de las publi- 
caciones y lo han hecho a lo grande, 
adquiriendo dos importantes com- 
pañías americanas como Spectrum 
Holobyte Inc. y Nexa Corporation. 

Con este importante paso, se ase- 
guran su presencia en el mercado 
internacional tanto de software, co- 
mo editorial. 




GOTO '87, 
Salón de la 
Informática, 
Of imática y 
Equipos 
Afine 



En Sevilla se ha celebrado, durante 
los días 27 a 31 de enero, GOTO '87, 
una feria organizada con la colabo- 
ración de la institución-feria de 
Muestras Iberoamericana de Sevi- 
lla. En ella estuvieron representados 
los sectores de ordenadores, perifé- 
ricos, soportes, software, etc., siendo 
muy completo. 

Durante la celebración de la feria, 
se desarrollaron unas jornadas téc- 
nicas, encaminadas a resolver los 
posibles problemas de los diversos 
sectores que concurrieron al salón. 



Í£S4 NUK W£¿í?a 
me 5 ¡<¡>uí A ropAS 






\ i DEBE SER l 
í ) ¿A HUBE PE LA \ 







Presentación 

^— — 

Spectravideo 
X'Press 1 6 

El nuevo X'press 1 6 es un aparato 
encaminado a sustituir al MSX X'- 
press y dirigido hacia un mercado 
potencial bastante importante y nu- 
meroso. El nuevo X'press 16 es un 
ordenador compatible con el PC, 
con una memoria RAM de 256K, 
una unidad de disco de 5.25" incor- 
porada, un conector de expansión, 
un teclado de 83 teclas y ports de 
expansión para joysticks, ratón, im- 
presora paralela y salida de monitor 
RGB analógica, RGB digital y Video 
Compuesto. 



Soporta ambos sistemas operati- 
vos PC-DOS y MS-DOS. En él pue- 
den correr todos los paquetes de 
programas para PC, desde los 
conocidos Wordstar y Multiplan, así 
como los más recientes Lotus 
123, dBase III, Sidekick y Frame- 
work. 

El X'press 1 6 es el primer ordena- 
dor personal en incorporar dos in- 
terfaces gráficos; un adaptador de 
gráficos color compatible PC y el 
MVDP (el conocido procesador de 
video del MSX II). 

La versión inicial del X'press 16 
saldrá al mercado a un precio de 
1 09.500 pts. (con una unidad de dis- 
co) y con la posibilidad de conectar- 
lo a la TV, algo que ningún PC ni 
compatible puede hacer. La compe- 
titividad del precio se verá reflejada 
en el nivel de compatibilidad del or- 
denador. 



Adaptador 
de MSX 
para SVI-328 

El adaptador MSX para SVI-328 
de C.C.G. está íntegramente diseña- 
do y fabricado por el C.C.G. S&H, fir- 
ma afincada en Bilbao y constituida 
por un grupo de programadores y 
técnicos residentes en la provincia 
de Vizcaya. El presente adaptador 
es el primer producto de fabricación 
propia que pone C.C.G. en el merca- 
do español y está comercializándo- 
se desde primeros de noviembre 
del 86. La distribución se canaliza 
casi totalmente a través de la propia 
empresa, aunque existen estableci- 
mientos que lo distribuyen igual- 



mente, siempre dependiendo del 
abastecimiento de C.C.G., en diver- 
sas provincias de la geografía espa- 
ñola. El adaptador es físicamente un 
cartucho, que se conecta en el slot 
habitual de cartuchos del SVI-328/ 
318, situado en la parte superior de- 
recha del teclado. Por su diseño, 
puede dejarse conectado perma- 
nentemente o puede extraerse del 
slot cuando no se utilice. 

Se trata de una adaptador para 
software que se encuentra en forma- 
to cassette o disco, y un paso de gi- 
gante, que permitirá unas innova- 
ciones hasta la fecha desconocidas. 
Los usuarios del SVI-328 ya podrán 
ejecutar la mayoría de los progra- 
mas existentes para MSX (como es 
lógico, siempre hay una excepción). 

Para obtener más información, 
dirigirse a: 

C.C.G. S&H 
Larrasolo, 1 3, 4.° B 
Baracaldo (48902 Vizcaya) 



Caja 
seguridad 
para discos 



Advantek International Limited, 
de Hong Kong, ha lanzado al merca- 
do una caja fuerte, con cerradura y a 
prueba de incendio, llamada «Disk- 
safe». Está hecha con un metal que, 
además de proteger su contenido 
del fuego, reduce el riesgo de que el 
disco o cinta queden perjudicados 
por cualquier campo magnético 
presente. 

Su diseño es bastante atractivo y 
no ocupa demasiado espacio, 
puesto que mide 210 x 190 x 350 
cm. Su capacidad es de 80 discos 
de cualquier tamaño y aún queda 
espacio libre para cintas. 

Otra novedad de esta empresa es 
el ordenador para los deportistas. 

El Sports Computer es un aparato 
moderno, diseñado para las perso- 
nas que quieren ponerse en forma. 
Se trata de una máquina muy senci- 
lla que mide el ritmo de velocidad, 
proporciona un nuevo aliciente al 
deporte y vigila la salud del usuario 
controlando su pulso. Se han dise- 
ñado varias versiones del Sports 
Computer, para varios deportes es- 
pecíficos, tales como bicicleta fija, 
remo, jogging y esquí y puede 
adaptarse a cualquier tipo de activi- 
dad. Hay varios modelos de Sports 
Computer en el mercado, poseyen- 
do esencialmente las mismas ca- 
racterísticas. Para obtener más in- 
formación, dirigirse a: 

Hong Kong Trade Developement 
Council 
Balmes, 184 
08006 Barcelona 





MSX 7 



Compatibilidad! 




en portada 



e vez en cuando aparecen 
en algunas publicaciones 
ciertos comentarios que 
ponen en duda lo que se supone 
es la base de todos los equipos 
MSX: la COMPATIBILIDAD. Estos 
comentarios se suelen fundar en 
tres apariencias: programas que 
cargan en unas máquinas sí y en 
otras no, programas que fallan al 
conectar la unidad de disco y dife- 
rencia en los formatos de los dis- 
kettes. Ultimamente aparece otro 
refiriéndose a los programas de la 
Primera Generación que no fun- 
cionan en ordenadores de la Se- 
gunda, cuando en teoría debía ha- 
cerlo. 

El primer fallo suele ser el mas 
evidente. Compramos un progra- 
ma, lo cargamos en nuestro orde- 
nador X y funciona sin ningún pro- 
blema. Lo llevamos a casa de un 
amigo que tiene también un orde- 
nador MSX, pero de marca Y, te- 
cleamos la correspondiente orden 
de carga y comprobamos con de- 
sesperación que, una vez llegado 
el final de la cinta, el ordenador 
queda totalmente insensible. Re- 
sultado; después de pulsar frus- 
trados el «RESET» llegamos a la 
convicción de que, cuando nos 
hablaron de la famosa compatibi- 
lidad nos contaron un «camelo». 

¿Realmente es así? Nada más 
lejos de la realidad. Ni el fabricante 
del ordenador X ni el del ordena- 
dor Y nos han engañado. El pro- 
grama no funciona porque el pro- 
gramador que lo diseño no tuvo 
en cuenta que ciertas característi- 
cas internas de estos aparatos no 
tienen forzosamente que ser igua- 
les en todos ellos. Este problema 
no hubiese aparecido si el progra- 
mador hubiese tenido en cuenta 
que MSX no es una máquina en 
particular, sino un Sistema Opera- 
tivo que varios fabricantes han de- 
cidido adoptar. Este Sistema Ope- 



rativo ofrece la gran ventaja de ha- 
cer que todo programa que respe- 
te una serie de normas funcione 
perfectamente en cualquier má- 
quina que lo use. 

Para aclarar ideas vamos a es- 
tudiar algunos conceptos sobre lo^ 
que es un Sistema Operativo, su 
necesidad y lo que es un Progra- 
ma Transportable, o sea. capaz de 
funcionar en máquinas físicamen- 
te diferentes pero que usan el mis- 
mo Sistema Operativo. 

Necesidad de los 
Sistemas Operativos 

Ningún ordenador puede fun- 
cionar sin la existencia de un me- 
dio que permita controlar el tráfico 
de datos entre la unidad central de 
proceso (CPU) y sus distintos peri- 
féricos (memoria, teclado, panta- 
lla...). Este control se consigue con 
un programa que depende total- 
mente del microprocesador que 
hace de CPU y del diseño electró- 
nico del ordenador, y suele llamar- 
se Monitor o BIOS (Basic Input 
Output System = Sistema Básico 
de Entrada y Salida). Este progra- 
ma necesita acompañarse de una 
extensión que permita al usuario 
introducir un mínimo de órdenes 
que le permitan efectuar algunas 
tareas básicas, como cargar otros 
programas o manipular ficheros 
(borrar, copiar...); esta extensión 
es el Procesador de Comandos. A 
este conjunto se le llama Sistema 
Operativo. 

El Sistema Operativo libera, por 
tanto, al usuario de la necesidad 
de conocer y controlar los proce- 
sos internos del ordenador y le 
permite fijar su atención en sus 
propios problemas. Podemos 
compararlo a la corriente eléctrica 
con que funcionan nuestros elec- 



trodomésticos; sin ella no los po- 
demos usar, pero no es necesario 
que sepamos cómo se produce o 
actúa para servirnos de sus posi- 
bilidades. 

Evolución de los 
Sistemas Operativos 

En principio, estos programas 
eran un conglomerado de rutinas 
puestas una a continuación de 
otra, sin más estructura que la ne- 
cesaria para funcionar en el orde- 
nador para el que habían sido di- 
señados. A cada rutina se accedía 
directamente, con lo que el con- 
junto resultaba muy rígido ya que, 
si la rutina se modificaba por tener 
un fallo o por haberla tenido que 
adaptar a un cambio en el ordena- 
dor, esa llamada podía dejar de te- 
ner validez, con lo que cualquier 
programa que la usase ya no po- 
dría funcionar sin sufrir una modifi- 
cación. El resultado es que se per- 
día muchísimo tiempo adaptando 
cada programa a diferentes má- 
quinas. 

Otro fallo consistía en no sepa- 
rar el Procesador de Comandos 
del BIOS propiamente dicho. Ya 
que aquél sólo acepta un peque- 
ño conjunto de órdenes, la gran 
mayoría de los programas tienen 
sus propios medios de comuni- 
carse con el usuario haciéndolo 
innecesario. 

Si el BIOS y el Procesador de 
Comandos no están claramente 
separados será muy difícil elimi- 
nar éste y aprovechar el espacio 
que ocupa. 

Los Sistemas Operativos mo- 
dernos se suelen estructurar en 
cuatro partes muy bien definidas, 
el BIOS, que contiene todas las ru- 
tinas y datos internos necesarios 
para el funcionamiento del siste- 




10 MSX 



RST y SLOTS 

V PANTALLA 

E PSG - 

c Impresora 

T EDITOR 

O MANDOS JUEGOS 

R FICHEROS 

E CURSOR GRAFICO 

S OTROS 



RUTINAS DE E/S 



EDITOR 



GENERADOR CARACTERES 



CALCULADOR ARITMETICO 

TABLA DE EJECUCION DE 
RUTINAS BASIC 

TABLAS DE PALABRAS CLAVE 
BASIC Y DEMAS ELEMENTOS 
ASOCIADOS (OPERADORES) 

MENSAJES DE ERROR BASIC 



INTERPRETE BASIC 



< — &H4000 



&H7FFF 



Figura 1 : Mapa de la ROM de los MSX1 . 



ma, el Procesador de Comandos, 
el Area del Usuario, donde traba- 
jan los programas de éste y se al- 
macenan sus datos, y la Zona Ba- 
se, por medio de la cual los pro- 
gramas del usuario se comunican 
con el Sistema Operativo. Esta Zo- 
na Base es la clave del funciona- 
miento de todos los programas 
que se acogen a un Sistema de- 
terminado, ya que siempre está en 
el mismo sitio y contiene una infor- 
mación perfectamente conocida. 
Entre otras cosas, aquí está el pun- 
to de entrada al Sistema Operati- 
vo. 

Al poner en un punto fijo la en- 
trada al Sistema Operativo, es po- 



sible hacer todo tipo de cambios y 
adaptarlo a máquinas diferentes 
sin que los programas que lo usan 
tengan ningún problema de fun- 
cionamiento. 

Escribiendo programas 
bajo un Sistema 
Operativo 

Cuando se escribe un progra- 
ma en un lenguaje de alto nivel 
(BASIC, PASCAL...), al programa- 
dor le importan muy poco los pro- 
cesos internos de su máquina. El 
intérprete o el compilador se en- 



cargarán de traducirlo al lenguaje 
interno de la máquina. Una de las 
grandes ventajas de estos lengua- 
jes es no usar referencias directas 
a memoria, es decir, cuando te- 
cleamos PRINT nos trae absoluta- 
mente sin cuidado dónde queda 
almacenada la instrucción y qué 
espacio de memoria ocupa. 

Al usar código máquina pres- 
cindimos del intérprete, con lo que 
nos vemos libres de sus limitacio- 
nes pero también obligados a 
asumir sus misiones, por lo que 
tendremos que decidir dónde va 
el programa y cómo vamos a ad- 
ministrar la memoria. Por oposi- 
ción a los lenguajes de alto nivel, 
el código máquina necesita forzo- 
samente referencias directas a 
memoria; cuando se ejecute una 
instrucción como JP &H5000, en 
esa dirección deberá existir un có- 
digo ejecutable; de lo contrario, el 
ordenador se bloqueará sin previo 
aviso (¡aquí no hay "syntax error" o 
cosas parecidas!). 

Si JP &H5000 es una llamada a 
una rutina del Sistema Operativo 
que envía un carácter a la impre- 
sora, esa rutina deberá estar 
SIEMPRE ahí para que el progra- 
ma que la usa pueda funcionar. 
Este problema puede evitarse si el 
Sistema Operativo cuenta con 
unas referencias fijas para acce- 
der a las distintas rutinas que lo 
forman. Hay, en principio, doé for- 
mas de usar estas referencias fi- 
jas: 

1. °— Vectores. Un vector es una 
instrucción de salto colocada en 
un punto fijo de la memoria y que 
contiene la dirección correcta de 
una rutina. Podemos compararlos 
a las placas que suele haber a la 
entrada de los edificios de ofici- 
nas, que nos dicen dónde locali- 
zar cada una de ellas. 

2. °- Funciones. En las llamadas 
a función hay un único vector que 



MSX 11 



en portada 



llama a una rutina a la que se su- 
ministra el número que tiene la ru- 
tina que queremos usar (este nú- 
mero lo da el fabricante del Siste- 
ma Operativo). Esta rutina explora 
una tabla que contiene las direc- 
ciones (punteros) de las distintas 
rutinas del Sistema, carga la direc- 
ción correcta y envía a ella el pro- 
grama. El trabajo del vector es si- 
milar al de un conserje de hotel; su 
armario de llaves hace las veces 
de la tabla de punteros. 

Según vimos anteriormente, to- 
do programa que use estas refe- 
rencias fijas podrá seguir funcio- 
nando cuando el Sistema Operati- 
vo sufra una modificación. Al usar- 
las, el programador tiene la venta- 
ja de no tener que usar las instruc- 
ciones IN y OUTen ninguna parte 
de su trabajo. Estas instrucciones 
tienen el grave inconveniente de 
depender TOTALMENTE del hard- 
ware. Esto quiere decir que cual- 
quier cambio en la estructura físi- 
ca del aparato (come ha ocurrido 
con el nuevo procesador de vídeo 
de los MSX2) hará que los progra- 
mas que las usen dejen de funcio- 
nar. Si el programa hubiese hecho 
uso del Sistema Operativo, las 
modificaciones hechas en este 
habría hecho que continuase fun- 
cionando sin ninguna dificultad. 



IBM PC. Esto sin tener en cuenta la 
memoria de vídeo. No digamos ya 
nada de las posibilidades sonoras 
y visuales, sobre todo hablando 
de los MSX2. 

Este resultado se consigue ha- 
ciendo funcionar junto al Z-80 tres 
procesadores más: el VDP, que 
controla la pantalla y usa una RAM 
propia (la VRAM o Vídeo RAM), el 
PPI, que controla el funcionamien- 
to de los SLOTS (la revolucionaria 
característica que hace que un 
MSX pueda tener hasta 1 M de me- 
moria) y también el teclado y el 
cassette, y el PSG, nuestro «Luis 
Cobos» particular. Ademas están 
las entradas y salidas desde fuera 
de la carcasa del ordenador, ya 
que otro punto fuerte de los orde- 
nadores MSX es la posibilidad de 
comunicarse con otros equipos e 
incluso controlarlos (pongamos 
por ejemplo el equipo de vídeo 
Pioneer, los teclados Yamaha o el 
robot Spectravideo). 



Este complejo sistema se con- 
trola con un firmware (o programa 
en ROM) que, en los MSX1 , ocupa 
32K. De estos 32K, los primeros 1 6 
son propiamente el BIOS, mien- 
tras que los 16 restantes contie- 
nen las rutinas del BASIC, pudien- 
do desconectarse por medio del 
mecanismo de los SLOTS. 

Al principio de la ROM apare- 
cen 108 vectores que cubren las 
actividades básicas del Sistema 
(SLOTS, pantalla, impresora, cas- 
sette, cursor...); ésta es la parte 
más importante para el programa- 
dor. En la figura 1 se da un mapa 
aproximado de la ROM. 

Como cualquier otro programa, 
el BIOS y el intérprete manejan 
una serie de datos que hay que 
conservar en RAM. Este fin tiene la 
«zona de trabajo del sistema», lla- 
mada también de «variables del 
sistema». Esta zona tiene una par- 
te que hace a los sistemas MSX 
especialmente flexibles: los «gan- 




El sistema MSX 

Cualquiera que se haya deteni- 
do un poco a estudiar las carac- 
terísticas generales de un ordena- 
dor MSX habrá podido comprobar 
el gran trabajo hecho por los dise- 
ñadores. Con un procesador co- 
mo el Z-80, que sólo puede direc- 
cionar 64K de memoria, se consi- 
gue controlar hasta 1 Megabyte 
(i 1.048.576 byíes!), que es tanto 
como la máxima capacidad de un 




12 MSX 




chos» (HOOKS). Un gancho está 
formado, normalmente, por 5 ins- 
trucciones «RET» del Z-80 segui- 
das. Varias rutinas de la ROM (es- 
pecialmente las que se refieren al 
acceso a dispositivos de almace- 
namiento externo, como el disket- 
te) llaman por medio de una ins- 
trucción CALL a la primera direc- 
ción de cada gancho. Si modifica- 
mos su contenido (por ejemplo, 
con una instrucción JP...) pode- 
mos modificar o ampliar la tarea 
que realiza la rutina. Esto tiene 
múltiples aplicaciones; por poner 
un ejemplo, vamos a enganchar la 
rutina MAIN, que es llamada cada 
vez que vemos aparecer el "OK" 
en pantalla, para hacer que el or- 
denador de un «BEEP» cada vez 
que termine un programa o te- 
cleemos una instrucción en modo 
directo. Esto lo hacemos introdu- 
ciendo la instrucción CALL BEEP 



en el gancho H-MAIN, y puede ha- 
cerse como sigue: 

POKE 65293. 192 
POKE 65294,0 
POKE 65292,205 

El contenido de la Zona de Tra- 
bajo es crítico y no debe manipu- 
larse si no se sabe con certeza lo 
que se está haciendo. En princi- 
pio, el BASIC la protege evitando 
que un uso erróneo de la instruc- 
ción CLEAR pueda alterarla. Bajo 
control del BASIC, esta zona con- 
tiene una serie de variables que 
definen los límites de las distintas 
partes en que se reparte la RAM; 
estas partes se representan en la 
figura 2. Hay que tener en cuenta 
que, aunque lo normal sea que el 
programa BASIC se sitúe al princi- 
pio de la RAM no tiene forzosa- 
mente que ser siempre así. 

Con el MSX-DOS, la memoria 
se usa de forma diferente. Al de- 
tectar un diskette, la ROM de disco 
activa 64K de RAM y carga un pe- 
queño programa, llamado BOOT, 
que ocupa el primer sector de to- 
do diskette formateado en MSX- 
DOS. Este programa carga el Sis- 
tema Operativo (MSXDOS.SYS) 
que, a su vez, se encarga de car- 
gar el procesador de comandos 
(COMMAND.COM); con esta ulti- 
ma operación queda activado el 
Sistema Operativo y aparece el 
cursor. 

La figura 3 representa el mapa 
de memoria bajo control del MSX- 
DOS. La Página Cero contiene, en 
la dirección &H0005, el vector de 
entrada al Sistema Operativo. La 
dirección de destino de este vec- 
tor se llama BIOS (Basic Disk Ope- 
rating System), y marca el limite 
superior de la TPA (Transient Pro- 
gram Area), que es la zona de que 
dispone el usuario para almace- 
nar sus propios programas y los 
datos que éstos generan. En la 



Versión 1.0 del DOS, esta direc- 
ción es &HD106, lo que da 53254 
bytes libres para el usuario (la TPA 
comienza en &H0100, que es el 
límite superior de la Página Cero). 

Los programas bajo MSX-DOS 
que usan la raíz .COM tienen la ca- 
racterística de comenzar siempre 
en la dirección &H0100. 

Problemas con las 
unidades de disco 

Al hablar del MSX-DOS aparece 
otra de las cuestiones planteadas 
al enjuiciar la compatibilidad MSX. 
Esta se plantea de dos formas: la 
variedad de formatos de los dis- 
kettes y los problemas que apare- 
cen al conectar el drive. 

El primero de ellos se discutió 
en el número 1 8 de esta revista. El 
segundo requiere algo más de 
atención, ya que se plantea conti- 
nuamente a los usuarios de dis- 
cos. 

Una gran parte de los progra- 
mas MSX existentes han sido pen- 
sados para usarse sólo con cas- 
sette; si además añadimos que 
muchos de ellos han sido hechos 
para funcionar con ordenadores 
de 1 6K RAM, en que ésta ocupa la 
última página del mapa de memo- 
ria (una página tiene 1 6K), nos en- 
contramos con que la mayoría, y 
sobre todo estos últimos, invaden 
la zona de trabajo del sistema de 
disco. Resultado: es muy normal 
que un programa en cassette que 
funciona perfectamente con el dis- 
co desconectado deje de hacerlo 
al conectar el disco. También es 
frecuente que el ordenador quede 
bloqueado al intentar cargar estos 
programas. 

Los comentarios que suelen 
darse en estos casos son: «el dis- 
co no es compatible» o «¿para 



MSX 13 



en portada 



BOTTOM 

&H.800ff para 32 K 
&HC000 para 16 K 



&HE279 (Diskette)^ 
(Cassette) 



PROGRAMA BASIC 



VARJLABJLKS SUELES 



VARXABLLS 
DIMKNS 10 NADAS 



MEMORXA LXBRS (FR1¿(0)) 



7^ STACK creciendo liacia 
la parte baja de memoria 



CADENAS DE CARACTERES 



fcb (file control block) 

área para ficheros 



Memoria libre para el 
usuario (inut ilizable 
para el BASIC ) 



ZONA DE TRABAJO 



&HFFFF 



qué sirve e! disco si no puedo 
aprovechar su rapidez grabando 
en el mis programas en casset- 
te?». La respuesta es, nuevamen- 
te, «el fallo está en los programas, 
no en el ordenador». 

Algunos usuarios pueden solu- 
cionar el problema simplemente 
desconectando la unidad de dis- 
co. Otros no lo tienen tan fácil, co- 
mo ocurre con los que tienen un 
Spectravideo X'PRESS. Suele re- 
currirse a teclear la instrucción 
CLEAR 1 00.&HF380, pero esta so- 
lución sólo es válida si el proble- 
ma se debía a que el programa se 
«tragó» el STACK mientras carga- 
ba. Ahora bien, el problema puede 
haber sido causado por la des- 
trucción de una rutina llamada por 
medio de un gancho (todo el siste- 
ma de disco funciona con gan- 
chos). La mejor solución es anular 
totalmente el disco con el siguien- 
te programa: 



Figura 2: Mapa de la RAM BASIC. 

10 CLEAR 100.&HF380 

20 FORN=64000T0 64015 

30 READ A$;POKE N.VAL("&H"+A$) 

40 NEXTN 

50 DEFUSR=64000:A=USR(0) 
70 DATA F3.01 .2F.02.1 1 .9B.FD.21 .9A.FD. 
36.C9.ED.B0.FB.C9 

En ensamblador sería: 



FA00H DI 



LD BC.022F 

LD DE.FD9B 

LD HL.FD9A 

LD(HL),C9 

LDIR 

El 

RET 



. inhibe 

interrupciones 
: longitud tabla=559 
bytes 

; inicio tabla 

; coloca un "RET" 

. reactiva 
interrupciones 
. vuelve al BASIC 



Este programa puede ser gra- 
bado en disco. Antes de teclear 
RUN debemos comprobar que la 
luz que indica el funcionamiento 
del drive está apagada, si no que- 
daría girando continuamente el 
disco, lo que puede dar lugar a 
una avería. 



TXTTBL 
VARTAB 
ARYTAB 
-STREND 

SP (Stack Pointer) 
-MEMSIZ-n 

MEMSIZ 
-HIMEM 



En cuanto a pasar los progra- 
mas en cassette a diskette, el pro- 
cedimiento es más complicado. 
En líneas generales, los pasos a 
seguir son los siguientes: 

1. ° Cargar y grabar los distintos 
bloques de código máquina. 

2. Cuando uno de estos blo- 
ques pueda invadir la zona de tra- 
bajo del disco, cambiar su direc- 
ción con la instrucción 

BLOAD"CAS:nombre",HEX$(di 
rección inicial-dirección de carga) 

donde la dirección «inicial» es la 
que realmente tendría si se carga- 
se normal normalmente. 

3. Preparar y grabar un progra- 
ma que cargue los distintos blo- 
ques, permita parar el disco, lo 
anule, coloque los distintos blo- 
ques en los lugares adecuados y 
arranque el programa principal. 



14 MSX 



Cómo hacer programas 
transportables para 
MSX 



Con lo visto hasta ahora tendre- 
mos ya una idea general de cómo 
un programa puede fallar al cam- 
biar de máquina y otro puede fun- 
cionar sin dificultad, al haber sido 
planeado para ser TRANSPORTA- 
BLE. Vamos a concretar esto un 
poco centrándonos sobre los sis- 
temas MSX. 

En BASIC, un programa que no 
use referencias directas a memo- 
ria (CLEAR.POKE, llamadas a có- 
digo máquina....) debe trabajar 
perfectamente en cualquier orde- 
nador MSX que tenga una capaci- 



dad de memoria adecuada a su 
longitud. Si se van a usar estas re- 
ferencias se deben tener en cuen- 
ta los principios que se van a dar 
para los programas en código 
máquina. Si se usa la instrucción 
CLEAR debe tenerse en cuenta 
que, si se usa un valor superior a 
&HE279, peligra el funcionamien- 
to del programa al usar diskettes. 

Al programar en código máqui- 
na debe hacerse lo siguiente: 

1. ° Usar los vectores para toda 
operación que represente entrada 
o salida. El usar IN o OUT (INP y 
OUT en BASIC) hará que el pro- 
grama funcione con plena garan- 
tía solamente en la máquina en 
que fue preparado. 

2. En lo posible, respetar las zo- 



nas de trabajo del sistema. Con 
una memoria de 64K hay espacio 
suficiente para enormes sofistica- 
ciones. Si, además, añadimos que 
es posible usar al mismo tiempo el 
BIOS y la RAM que hay «detrás» 
de él (gracias a los vectores de 
control de los SLOTS) podemos 
decir que tenemos 16K adiciona- 
les. 

Para programas a usar con 
MSX-DOS, las reglas son iguales. 
Todas las operaciones de entra- 
da/salida deben hacerse a través 
de lamadas al vector BDOS. En 
cuanto a la extensión del progra- 
ma y su zona de trabajo, deben 
estar dentro de la TPA. Si hace fal- 
ta puede usarse el espacio que 
ocupa el Procesador de Coman- 




disponemos de 

TAPAS ESPECIALES 

para sus ejemplares 




(en cada tomo se pueden encuadernar 6 números) 



SIN NECESIDAD DE ENCUADERNACION 

^ÉcÍOOÑÍDAD 



Para hacer su pedido, rellene este cupón HOY MISMO 

y envíelo a: MSX MAGAZINE 
Bra vo Murillo, 377 Tel.: 733 79 69 - 28020 MADRID 

Ruego me envíen., tapas para la encuademación de mis ejemplares de 
MSX MAGAZINE. al precio de 650 pts más gastos de envío 
El importe lo abonaré 

□ POR CHEQUE □ CONTRA REEMBOLSO □ CON MI TRAJETA DE 
CREDITO □ AMERICAN EXPRESS □ VISA □ INTERBANK 

Número de mi tarjeta: 

Fecha de caducidad Firma 

NOMBRE 



DIRECCION 

CIUDAD C P 

PROVINCIA 



en portada 



¿H0000 



&HFFFF- 



Página Cero. Contiene el | 
Vector de entrada ai Sistema 



TPA 

(Transient Program Area) 

Zona reservada a programas 
y variables del usuario. 



Procesador de Comandos 



SISTEMA. OPERATIVO MSX-DOS 



Area de Trabajo 



BDOS 



Figura 3: Mapa de la RAM MSX-DOS. 



dos. Al terminar el programa hare- 
mos una llamada al vector 
WBOOT (&H0000) para volverlo a 
poner en memoria. 

Casos particulares 

No siempre es posible hacer un 
programa que respete todos los 
principios expuestos; éste es, pre- 
cisamente, el caso de los auxilia- 
res. Al ser su misión principal con- 
trolar las operaciones de entrada y 
salida de cada máquina en parti- 
cular, dependen en todo de las ca- 
racterísticas de esta. Por ello es 
perfectamente normal, y no indica 
en absoluto falta de compatibili- 
dad, que el Sistema Operativo de 
una máquina no funcione en otra. 
Esto ocurre con el CP/M del Spec- 
travideo X'PRESS. Este ordenador 
puede trabajar en 80 columnas; al 



estar el CP/M adaptado a esta mo- 
dalidad no tiene por qué funcionar 
en máquinas que usan sólo 40 co- 
lumnas. 

También debe considerarse 
que, en un campo que evoluciona 
tan rápidamente como el de la In- 
formática, todo sistema que no 
pueda ser mejorado está conde- 
nado al fracaso. Por ello se ha in- 
troducido el concepto de «compa- 
tibilidad ascendente», que supone 
que las nuevas versiones de un 
Sistema Operativo permitirán que 
cualquier programa preparado 
con una versión anterior pueda 
funcionar con ellas; sin embargo, 
el supuesto contrario no es válido. 
Concretando: todo programa para 
un MSX1 debe funcionar en un 
MSX2, pero no al revés, lo que no 
es extraño si tenemos en cuenta 
las nuevas capacidades de los 
MSX2. 



Incompatibilidades 
en la práctica 

Como término a estas observa- 
ciones vamos a estudiar un par de 
casos particulares de incompatibi- 
lidad que, después de un peque- 
ño estudio, demuestran que el fa- 
llo está en el poco conocimiento, 
por parte del programador, de las 
características del Sistema MSX. 

El primero se refiere a un pro- 
grama que, independientemente 
del error que veremos, es excep- 
cionalmente bueno: el ajedrez 
CHESS'86 de PHILIPS. Este pro- 
grama ocupa 32K de RAM y hace 
uso del BIOS para sus operacio- 
nes de entrada/salida. 

Este programa cuenta con una 




16 MSX 



presentación y una calidad de jue- 
go que le hacen estar entre los 
mejores para cualquier tipo de or- 
denador. Sin embargo, tiene un fa- 
llo que habrá notado cualquiera 
que haya tratado de cargarlo en 
un Spectravideo X'PRESS: el or- 
denador queda bloqueado a poco 
de iniciarse la carga y hay que pa- 
rarlo para recuperar el control. Sin 
embargo, con una ligera modifica- 
ción en el programa cargador, el 
programa funcionará a la perfec- 
ción. ¿Cuál era el fallo? Lo primero 
que hace el cargador es modificar 
el mapa de memoria, inhabilitan- 
do el BASIC y sustituyéndolo por 
RAM; ahora bien, esa RAM ocupa 
SLOTS diferentes en ambos orde- 
nadores, cosa no prevista por el 
programador. 




Veamos ahora un programa de 
la firma «Software Projects». Los 
programas de esta casa suelen 
caracterizarse por sus sofisticadas 
protecciones, de las cuales la más 
moderna es el típico código de co- 
lores. Otras protecciones menos 
visibles consisten en quitar la ca- 
becera de los programas o usar 
sistemas de carga propios. Vea- 
mos el caso particular de «Jet Set 
Willy II». Este programa comienza 
con un cargador en BASIC y conti- 
núa con otro cargador en código 
máquina. En el cargador BASIC 
está el primer fallo. Al usar la ins- 
trucción BLOAD"M" para cargar el 
siguiente bloque, en vez de 
BLOAD"CAS:M", la carga no pue- 
de hacerse si hay unidad de disco 
conectada, ya que el Sistema in- 
tentará buscar «M» en el diskette. 
Una vez corregido esto, el proble- 
ma queda subsanado. Sin embar- 
go, estudianto el cargador de có- 
digo máquina encontraremos al- 
gunas cosas que hacen dudar se- 
riamente que el programa pueda 
funcionar en cualquier MSX1 y, 
por supuesto, que lo haga en un 
MSX2. Este cargador cambia el 
modo de interrupciones del Z-80 
de 1 (que es el normal) a 2. Usa, 
además, un sistema propio de ac- 
ceso a pantalla a través de instruc- 
ciones INyOUT. Por último, la ruti- 
na de carga desde cassette es 
también propia. 

Todo programa MSX1 que no 
use vectores BIOS para acceder a 
pantalla es más que improbable 
que funcione en un ordenador 
MSX2. Un solo hecho basta para 
mantener esta afirmación. Un 
MSX1 tiene una VRAM de 1 6K, por 
lo que las direcciones deben dar- 
se como números de 2 bytes, 
mientras que un MSX2 tiene 128, 
con lo que hacen falta 3 bytes para 
dar esas direcciones. El BIOS de 
un MSX2 puede tener prevista la 



conversión; pero, si las direccio- 
nes se pasan a BASE de IN y OUT, 
el fallo es inevitable. 

A modo de reflexión final, al ha- 
cer un programa debe huirse de 
técnicas extrañas a su propia fina- 
lidad. Algunos «descubrimientos 
espectaculares» pueden hacer 
peligrar la calidad del programa si 
no están suficientemente compro- 
bados. Por otra parte, derrochar 
esfuerzo e imaginación en sofisti- 
cados sistemas de protección no 
solo significa una preciosa pérdi- 
da de tiempo sino también, a ve- 
ces, un perjuicio para el resultado 
final. Volviendo al «Jet Set Willy», 
nada hay más fastidioso que, des- 
pués de sufrir la lentitud con que 
carga el programa y fallar dos ve- 
ces al introducir el código de colo- 
res, quede borrado de la memoria 
el juego. 

Es un hecho archidemostrado 
que, no importa cuál sea el tama- 
ño del ordenador, toda protección 
por software está condenada a la 
aparición de otro programa que la 
anule. Lo normal es que, si el pro- 
grama es bueno, haya múltiples 
personas buscando la forma de 
desprotegerlo. Si el programa es 
«corrientito», lo más seguro es que 
los usuarios no se molesten en in- 
vestigar y, simplemente, lo dese- 
chen. 

Como muestra de la poca utili- 
dad de estos sistemas, recomen- 
damos a aquellos propietarios del 
«Jet Set Willy II» que estén cansa- 
dos de sufrir el «suplicio de los co- 
lores» cargar el programa de la si- 
guiente forma: 

10 CLEAR 100,34303 

20 BLOAD"CAS:" 

30 POKE 35937,135 

40 DEFUSR=36155:A=USR(0) 

RUN 



Lorenzo Hernández Talavera 



MSX 17 




Libro: Estadística: Teoría, 
problemas y aplicaciones 
en BASIC 

Autores: J. Tennant - Smith 
Editorial: Anaya 
Páginas: 218 



La importancia de los ordena- 
dores y de las técnicas de cálculo 
difícilmente puede ser sobrevalo- 
rada en nuestros días. El poder de 
los ordenadores en la ciencia, 
tecnología, industria y comercio es 
umversalmente reconocido, pero 
quedan aún enormes potenciales 
por desvelar, a consecuencia de 
la falta de conocimientos sobre 
probabilidad y estadística. 

Los especialistas en estadística 
han realizado importantes avan- 
ces mediante el uso y aplicación 
de los ordenadores a las técnicas 
de análisis multivariante y el análi- 
sis de las series cronológicas. Es- 
tas series habitualmente se desa- 
rrollan en ordenadores con len- 
guajes de alto nivel, como el FOR- 
TRAN, PASCAL u otros lenguajes 
matemáticos especializados. 
Queda, no obstante, un amplio 
campo para los programas de 
probabilidad y estadística en len- 
guaje BASIC, aplicados a proble- 
mas que son matemáticamente 
más sencillos pero de una induda- 
ble importancia práctica. 

18 MSX 



En este libro los autores se han 
propuesto desarrollar una labor 
didáctica muy seria con un doble 
objetivo. Por un lado, introducir a 
los neófitos en la programación en 
el lenguaje BASIC, y por otro, pre- 
sentar una enseñanza gradual y 
ordenada sobre la estadística, co- 
menzando por la estadística des- 
criptiva elemental, pasando por la 
teoría elemental de la probabili- 
dad, experimentos de simulación, 
variables aleatorias, distribución 
de probabilidades, funciones de 
densidad, muestreo y estimación, 
etc., y llegando a la regresión y co- 
rrelación, para culpiinar la obra 




con otras técnicas y modelos es- 
tadísticos. 

Todo este recorrido por la cien- 
cia de la estadística está muy bien 
acompañado por ejemplos de 
programas BASIC aplicados a ca- 
da concepto desarrollado, así co- 
mo un gran número de propues- 
tas para variar los ejemplos dados 
y para resolver problemas me- 
diante programas sencillos en el 
ordenador. 

Aunque los listados que apare- 



cen en el dibujo están desarrolla- 
dos en una versión de BASIC Mi- 
crosoft, el primer capítulo está de- 
dicado íntegramante a explicar las 
peculiaridades de otros dialectos 
BASIC y el camino a seguir para 
que cada lector realice la adapta- 
ción de los ejemplos propuestos 
al BASIC que incorpore su mi- 
croordenador. 

Ahora que, con el proyecto Ate- 
nea, parece que los ordenadores 
van a estar cada día más presen- 
tes en las escuelas, libros como 
éste, excelente en su plantea- 
miento y su desarrollo, irán co- 
brando cada vez mayor importan- 
cia, ya que pueden resultar exce- 
lentes ayudantes, tanto para el 
profesor con conocimientos de 
estadística pero neófito en la pro- 
gramación BASIC, como para el 
estudiante que ya conozca dicho 
lenguaje y esté presto a aprender 
estadística. 



Libro: Introducción 
a MSX LOGO 
Autor: Manuel Medel 
Editorial: Peopleware, S.A. 
Páginas: 124 

La denominación que puede 
definir al LOGO es adaptabilidad, 
ya que, a diferencia de lo que ocu- 
rre con otros lenguajes como el 
BASIC -donde los comandos e 
instrucciones forman parte de su 
intérprete y no pueden variarse-, 
el LOGO, por tratarse de un len- 
guaje procedimental, nos permite 
crear procedimientos adaptados a 
nuestras necesidades y que po- 
demos usar como si fueran ins- 
trucciones. Con estos procedi- 
mientos podremos realizar un len- 
guaje de programación adapta- 
dos a los problemas que quera- 



mos resolver, y lo que es más im- 
portante, a nuestra forma de pen- 
sar. 

También es muy conocida la 
capacidad de los gráficos de tortu- 
ga del LOGO, que lo hacen muy 
popular entre los jóvenes, así co- 
mo su capacidad interactiva y es- 
tructural que lo hacen ideal para 
iniciar a los niños en la informática. 

Es precisamente en esta direc- 
ción en la que está orientado este 
libro, excelente para aprende'r LO- 
GO, y que además presenta la 
ventaja de estar basado en el LO- 
GO PHILIPS MSX, con lo cual los 
ejemplos pueden teclearse direc- 
tamente sin necesidad de adap- 
tarlos de un dialecto a otro. 

Tras una breve introducción en 
la que se explican los conceptos 




generales necesarios (procedi- 
mientos, primitiva, etc.), comenza- 
mos a aprender los nombres y 
funciones de las diversas primiti- 
vas, agrupadas por capítulos se- 
gún sus características comunes 
(las de movimiento de tortuga, las 
de manejo de sprites, las de ma- 
nejo de cinta/disco, etc.). 

En todos los casos se plantean 
ejemplos, primero sencillos y pro- 
gresivamente más complejos, que 
nos ayudan a familiarizarnos con 
el lenguaje y a memorizar la fun- 
ción que desarrolla cada primitiva. 

De este modo, podemos apren- 
der a manejar esta excelente ver- 
sión de LOGO (muy rápida, muy 
completa y en castellano) con 
nuestro MSX. Un libro muy intere- 
sante. 



SUSCRIBASE 
POR TELEFONO 

* más fácil, 

* más cómodo, 

* más rápido 

Telf. (91)7337969 

7 días por semana, 24 horas a su servicio 



SUSCRIBASE A 





SOFTWARE 



Programa: The Goonies 
Tipo: Juego 
Distribuidor: SERMA 
Formato: Cartucho 

Basado en un fantástico film 
cinematográfico, SERMA nos 
presenta este juego, The Goo- 
nies, una maravillosa aventura 
con una divertida trama y un 
apasionante final. 



más peligrosas, juego ilícito, 
etc. 

El juego comienza en el mo- 
mento que os encontráis a uno 
de los hermanos Fratelli, Sloth, 
por quien seréis representados 
a lo largo del juego, ya que él no 
es como sus hermanos y ha de- 
cidido unirse al grupo. Vuestras 
vidas comienzan a correr peli- 
gro. Sloth, se encontrará con un 
sin fin de cavernas y mazmorras, 











'i 


4 


W t 

? 






E liftli 

n 













El juego para aquellos que no 
conocéis la película, os será aún 
más entretenido. Nos encontra- 
mos en un pueblecito costero, 
Cauldron Point, en un paraje 
desconocido llamado los mue- 
lles de Goon, cuyo entorno en- 
cierra un fascinante secreto. 

The Goonies son un grupo de 
amigos en busca siempre de 
aventuras, ese afán por buscar 
experiencias nuevas les ha lle- 
vado a encontrar un tesoro, re- 
flejado en un mapa por el pirata 
más temido de la región Willy 
«el tuerto». Dispuestos a ir en su 
busca llegarán a la guarida de 
los hermanos Fratelli, los cuales 
desconocen la existencia de es- 
te tesoro pero ocultan cosas 



y lo que es peor, a sus hermanos 
tras él y monstruos que habitan 
por los pasadizos y que fueron 
los compañeros del pirata Willy. 

Este juego está preparado 
para un solo jugador y la acción 
puede controlarse tanto con 
joystick, como con los cursores. 

Una interesante peculiaridad 
de este juego es que debes te- 
ner presente el nivel de vitali- 
dad y experiencia, que se verá 
reflejado en dos barras en la 
parte superior de la pantalla, las 
cuales irán creciendo y/o de- 
creciendo a medida que avan- 
zamos por las cavernas y masa a 
los monstruos. Elemento princi- 
pal en el que debe fijar su aten- 
ción, son las llaves que irán apa- 



reciendo a su paso, las cuales 
debe recoger, eso sí, recordan- 
do que sólo podrás transportar 
una cada vez. Estas llaves te 
permitirán abrir las mazmorras 
que encuentres a tu paso y así 
salvar a los Goonies, pues han 
sido encerrados. Cada vez que 
logres salvar a los siete Goonies 
acabará una etapa, pero sólo 
podrás acceder a la siguiente si 
has conseguido todos los ele- 
mentos necesarios y se encuen- 
tres en poder de la contraseña. 

Elementos necesarios son: 
zapatillas, eso sí, especiales, ya 
que con ellas podrás correr más 
deprisa. El casco; los lugares 
que visitarás, sin duda serán 
muy abruptos, por eso es nece- 
sario que lo encuentres y comi- 
da que te dará la vitalidad sufi- 
ciente para seguir adelante. 

El juego consta de cinco eta- 
pas subdivididas en cinco esce- 
nas a su vez, están interconecta- 
das por unas entradas calavéri- 
cas, así podrás investigar todas 
y salvarte más de una vez. 

Para todos aquellos seguido- 
res de Konami, no hace falta que 
digamos nada más del juego, ya 
que su calidad está demostrada 
desde el primero al último, pero 
sí nos gustaría comentar la inno- 
vación que supone en el mundo 
del software llevar un film cine- 
matográfico al ordenador, ya no 
por las técnicas empleadas, que 
sin duda son excelentes, sino 
por ese afán siempre de motivar 
a los usuarios de ordenador, lo 
cual agradecemos. 

Destacar la música que apa- 
rece a lo largo del juego y la 
sensibilidad de movimientos 

Puntuación: 
Presentación: 8 
Claridad: 8 
Rapidez: 9 
Adicción: 9 



20 MSX 



Programa: Livinsgtone, 

Supongo 
Tipo: Juego 

Distribuidor: Opera Soft 
Formato: Disco de 3.5" 

¡¡Fantástico, sensacional!! 
Opera Soft ha dado en el blanco 
de las tendencias videoadictas. 
Livingston Supongo, está llama- 
do a convertirse en un mito en el 
mundo de los juegos de ordena- 
dor. 

La versión que hemos obteni- 
do para los ordenadores MSX, 
no tiene que envidiar nada a las 
anteriores creadas para otros 
ordenadores. El fabuloso y sin- 
gular tema del que se trata y el 
cual forma la aventura que aho- 
ra os voy a narrar es de las más 
interesantes, tanto en la reali- 
dad como en la ficción, la cual 
ahora llevada al mundo de los 
juegos de ordenador hará las 
delicias de más de un usuario. 

Permitid que me presente, 
soy Morton Stanley. Me esta- 
blecí en Nueva York, y fue allí 
donde empezó todo, la más in- 
creíble historia que un hombre 
jamás pudo contar o imaginar. 

Me enviaron como corres- 
ponsal a Africa en busca del pa- 
radero del Dr. Livinsgton, la sel- 
va era inimaginable y cada vez 
que me adentraba más en sus 
caminos todo se volvía más mis- 
teriosa y espeluznante. 

Como podréis suponer, vues- 
tra misión es la de encontrar al 
Dr. Livinsgton y referir unas pa- 
labras si aún os queda aliento 
para realizar esa labor, cuando 
hayáis conseguido pasar todas 
las pruebas a las que os veréis 
sometidos. 

No sólo necesitaba víveres, 
sino que también armas con las 
que pudiera defenderme de los 



numerosos peligros con los que 
sin duda me encontraría. Me hi- 
ce como pude un fuerte Boome- 
rang, unas lanzas y algunos cóc- 
teles Molotov, con el whisky que 
aún me quedaba, además de 
una pértiga que me cedió uno 
de los lugareños con cara de 
pocos amigos. 

Como podréis figuraros, sólo 
contaréis con estas armas a las 
que he hecho referencia ante- 
riormente, la aventura que es- 
táis viviendo está llena de inve- 
rosímiles hazañas las cuales 
efectuaréis, ya que el juego está 
formado por numerosas panta- 
llas que se suceden y las cuales 
os van acercando a Livinsgton. 
Pero a lo largo del camino os 
iréis encontrando cinco piedras 
preciosas guardadas fielmente 
por las tribus de la zona o es- 
condidas en lugares que jamás 
habíais imaginado, debéis re- 
cogerlas y transportarlas hasta 
la penúltima etapa del juego, 
donde las debéis ofrecer dentro 
del Templo. 

Si llegáis a superar esta etapa 
estaréis más cerca que nunca 
del fin pero no os confiéis ya que 
a medida que se desarrolle el 
juego, veréis que hay un princi- 
pal enemigo vuestro, un buitre 
que en el caso de que os atrape 



os llevará hasta el principio del 
juego y tendréis que empezar 
de nuevo. 

Cuando llevéis bastante aven- 
tura recorrida debéis daros 
cuenta que vuestra energía se 
acaba, encontraréis a lo largo 
del juego botijos y barras de 
pan que os permitirán seguir a 
adelante. 

Aunque nos esforcemos en 
describiros este fascinante jue- 
go, no existirían palabras para 
ello, es por eso que nadie mejor 
que Ud. puede comprobarlo. De 
la realización gráfica y estructu- 
ra interna del programa, cual- 
quier elemento sería digno de 
mencionar. Podemos destacar 
entre todos principalmente la 
maravillosa melodía, que escu- 
chamos al pasar la prueba del 
Templo, generada como si de 
un instrumento se tratase. 

La historia dice, que cuando 
vi por primera vez a Livinsgtone 
le dije, como un buen flemático 
inglés: «Livingstone, supon- 
go.». 

Puntuación: 
Presentación: 9 
Claridad: 8 
Rapidez: 9 
Adicción: 10 




SOFTWARE 



Programa: Spitíire 40 
Tipo: Juego 

Distribuidor: Mirrorsoft 
Formato: Cassette 



Spitíire 40 no es sólo la mejor 
aventura que puedas tener vo- 
lando, sino que este simulador 
de vuelo, en toda la extensión 
de su contenido, es la más es- 
pectacular acción de guerra. 

Nos han llegado aquí directa- 
mente de Inglaterra, por lo que 
hemos podido ver su originaria 
presentación y desarrollo el 
cual como simulador tiene todas 
las características necesarias y 
más que suficientes. 



cado no reunían todas nuestras 
necesidades. 
Spitíire 40, es sin duda lo que 

muchos esperábamos, dejando 
siempre una puerta abierta a la 
superación. Un juego en conjun- 
to interesante, la disposición de 
la cabina de mandos, en la que 
podemos observar con claridad 
todos los niveles de velocidad, 
altura e inclinación del aparato 
junto a otros muchos elementos 
imprescindibles para realizar la 
misión. 

Un mapa de vuelo en el que 
nos indica la posición nuestra, 
del adversario y de los aero- 
puertos más cercanos, nos faci- 
litará el vuelo y el objetivo. Y lo 
más importante el punto de mira 
de la ametralladora que nos ser- 




El juego se presenta con un 
manual de instrucciones por el 
momento en inglés, hecho que 
no dificulta la acción, ya que la 
disposición de los elementos en 
la pantalla, nos resulta muy cla- 
ra a la hora de pilotarlo. 

Los combates aéreos siempre 
han sido un hecho un poco leja- 
no a nosotros, y los programas 
que hasta ahora había en el mer- 



virá para batir a nuestros enemi- 
gos. Comenzar la misión sólo 
depende del despegue que 
efectuemos, potencia, veloci- 
dad y precisión, serán los ele- 
mentos necesarios. Pero como 
no todos nacemos sabiendo, es- 
te programa cuenta con tres op- 
ciones, una primera denomina- 
da prácticas en la que podemos 
efectuar el despegue y aterriza- 



je tantas veces como queramos 
dirigiéndonos al objetivo que 
más nos guste. Una segunda, 

propia de combate en la que 
mediremos nuestra astucia con 
numerosos enemigos y que nos 
servirá para familiarizarnos con 
el aparato y una tercera en la 
que se desarrolla propiamente 
el juego y en la que se debe lle- 
var a cabo una misión. 

Esta tercera etapa consistirá 
en alcanzar un objetivo y hacer- 
lo desaparecer, por ello se nos 
designará un nombre, el cual 
podremos elegir, el juego, com- 
bate o prácticas y los datos del 
objetivo, posición, altitud, di- 
rección y velocidad. 

Habernos familiarizado con el 
avión es imprescindible ya que 
cuando estemos en vuelo no po- 
dremos quitar ojo de la situa- 
ción, ver el mapa de situación y 
mantener el avión es lo más im- 
portante. Realizaremos numero- 
sos virajes y el enemigo siem- 
pre estará a nuestra cola, desa- 
pareced de su campo de acción 
y no dejéis que se os escape. 

En plena batalla todo sucede 
muy rápido, pero el juego en sí 
es un tanto lento, sobre todo pa- 
ra aquellos que adaptéis la op- 
ción de prácticas, pues tarda- 
réis en llegar a otro aeropuerto. 
Podréis jugar todo el tiempo 
que deseéis pues no tenéis nivel 
de gasolina y el fuego enemigo 
muy pocas veces os derribará. 

Es un verdadero simulacro de 
vuelo de guerra, numerosos li- 
bros han reflejado sus carac- 
terísticas y se han referido a él, 
mejor garantía no hay. 

Puntuación: 
Presentación: 9 
Claridad: 8 
Rapidez: 6 
Adicción: 8 



22 MSX 



Programa: Samantha 
Fox 

Tipo: Juego 
distribuidor: SERMA 
Formato: Cassette 



El humo ciega mis ojos, pero 
intento adivinar con la mirada 
qué juego lleva el contrario, 
apuro de un trago el Whisky, 
mientras contemplo mis naipes, 
parecen enviarme un mensaje, 
quizás mi suerte haya cambia- 
do. Ya no hace falta depender 
de otras personas para disfrutar 
de esos juegos de siempre, co- 
mo es una buena partida de car- 
tas y en este caso, de Poker. 

Los distintos juegos de mesa 
que se nos presentan para la ga- 
ma de ordenadores MSX, hacen 
que muchas veces podamos ju- 
gar una partida entretenida sin 
necesidad de llenar la casa de 
amigotes. Samantha Fox, es una 
de las versiones más entreteni- 
das y a la vez más divertidas, ya 
que incluye en la misma casset- 
te dos versiones del tan temido 
a veces juego del Poker y a su 
vez tan enigmático, pues no sólo 
encierra inteligencia e intuición 
sino la paradójica situación de 
la suerte. 

Serma, deleita la vista de los 
varones con un juego de poker 
muy sexy, en la cara A de Sa- 
mantha Fox, encontramos una 
versión, en la que la propia Sa- 
mantha será nuestro adversario 
pero aquí no se jugará con dine- 
ro sino que Samantha se irá des- 
prendiendo de sus prendas a 
medida que vaya perdiendo y ya 
no le quede más ropa, momento 
en el que habrás ganado y será 
recompensado con una estu- 
penda foto de póster de Samant- 
ha sin un solo atavío. Aunque 



parezca un poco libertino, la 
imagen que recogemos en 
nuestro monitor es digitalizada, 

es decir, de una imagen de car- 
ne y hueso, se ha obtenido esta 
fotografía, sin duda atractiva. Lo 
sentimos por el sexo femenino 
ya que no han tenido la delica- 
deza de adjuntar otra versión 
cuyo adversario fuera hombre. 

La cara B del juego, se esta- 
blece como una partida normal 
en la que existen apuestas y va- 
rios contrincantes, siendo en to- 
tal cuatro jugadores. La modali- 
dad de juego es el poker descu- 
bierto de siete cartas, de las 
cuales a la hora de la verdad só- 
lo se podrán combinar cinco, 
aunque eso lo hace el programa 
por ti. Tienes varias opciones, 
pasar si no llevas juego, ver co- 
mo reacciona el adversario, cu- 
brir la apuesta para ver las car- 
tas y subirla si la suerte te ha 
sonreido o vas de farol, y todo 



esto con dos teclas cursores y 
enter. 

En esta segunda parte del jue- 
go no podremos ver a nuestros 
adversarios ya que no se ha in- 
cluido ninguna imagen por lo 
que en comparación con la cara 
A, pierde un «poco» de interés, 
tan sólo podremos ver nuestras 
cartas y las combinaciones a las 
que podemos optar referidas 
por la máquina, pues sólo hay un 
descarte. Aparecen en la panta- 
lla junto con las cartas las 
apuestas que realizan los de- 
más adversarios. 

Hacer referencia a la música 
del juego, la cual oiremos al 
principio y al final de éste, y que 
es la banda original de la pelí- 
cula «El Golpe». 

Un juego en conjunto diverti- 
do y sorprendente, un poco len- 
to en su desarrollo, pero esto 
permite mayor concentración. 

Suerte... y no deseperéis. 




Puntuación: 
Presentación: 8 
Claridad: 7 
Rapidez: 6 
Adicción: 9 



MSX 23 



el mejor sof twa 




GARATA 
DE CARGA 



DROME 

Entretanto en DROME, un Super-ordenador, debes encontrar y elimi- 
nar los sofisticados sistemas de defensa y supervivencia. 

Has de elegir uno de los cuatro sectores que constituyen los mecanis- 
mos de defensa de esta terrorífica máquina. 

Un atractivo juego de acción, donde se pone a prueba la capacidad 
de la máquina y del jugador. 

Precio de venta 2.000 ptas. (IVA incluido) 




FLIGHT DECK 

Sienta la emoción del golfo de Sidra en casa. 

FLIGHT DECK es un juego de estrategia y habilidiad en el que tendrás 
que desmantelar las bases enemigas. 

Al mando de un portaaviones donde dispones de 1 0 unidades de 
combate... y poco tiempo. 

Precio de venta 2.000 ptas. (IVA incluido) 



acAttack 




MC-ATTACK 

Ayuda a Fredy, el Rey de la Hamburguesa a preparar el suculento man- 
jar que hace las delicias de los comensales. 

Ten cuidado con las salchichas grasientas y los huevos escurridizos que 
intentarán arruinar tu exquisito plato. 

Defínete con la pimienta y procura hacer el mejor número de hambur- 
guesas posible. 

... Buen provecho. 

Precio de venta 750 ptas. (IVA incluido) 



MSX 




COflFUSED? 

T 'T ■■"#:. :«« 




CONFUSED? 

Es el puzzle electrónico. 

El objeto del juego es resolver 1 0 puzzles con distinto número de pie- 
zas, a elegir, pero todas... MOVIENDOSE. 

Pon a prueba tu inteligencia y capacidad de deducción para solucio- 
nar algunos de estos entretenidos rompecabezas. 

Precio de venta 2.000 pías. (IVA incluido) 

NORTH SEA HELICOPTER 

Una explosión en una plataforma en el mar del Norte arroja a los 
hombres a un destino incierto... 

Empieza una carrera contrareloj para salvarles de su fatal situación. 

Tienes que convertirte en un piloto experimentado para mantener el 
control del helicóptero... El tiempo empeora. 

¿Crees que cumplirás la misión? 

Precio de venta 2.000 ptas. (IVA incluido) 




SPACE RESCUE 

Desciende de tu nave nodriza a la 
superficie lunar e intenta rescatar a los 
hombres extraviados. 

Ojo con los meteoritos que te destrui- 
rán cuando intentes regresar. 

Disponer de nuevas plataformas pa- 
ra culminar con éxito la misión. 

Desgraciadamente tu nave nodriza 
está bloqueada por unidades de com- 
bate enemigas... Intenta destruirlas. 

Precio de venta 750 ptas. (IVA 
incluido) 




AACKOSOFT 



GAMES 



MSX 64K - CASSETTE 
MANUAL EN CASTELLANO 



infodis. s.a. 



i 
i 
i 
i 
i 
i 
i 
i 
i 

i 



Solicita tu programa favorito en tu tienda especializada habitual o recorta y envía 
este cupón a INFODIS, S A., c/Bravo Murillo, 377. 5 ° A - 28020 MADRID. 
NOMBRE 



DIRECCION _ 
POBLACION 



PROVINCIA 



C P 



Forma de pago: CHEQUE □ CONTRAREEMBOLSO □ 
TARJETA DE CREDITO: American Express □ VISA □ 
Número de mi tarjeta f~]"~ | 

CADUCIDAD 

Firma 



INTERBANK 

I I I í I 



TITULO 


CANTIDAD 


TITULO 


CANTIDAD 


DROME 
FLIGH DECK 
MC-ATTACK 




CONFUSED? 
NORTH SEA 
HELICOPTER 
SPACE RESCUE 





SOFTWARE 



Nostra 
Tipo: Juego 

Distribuidor: Opera Soft 

Formato: Disco de 3,5" 

El superdetective Mike Bron- 
co de gran prestigio mundial ha 
sido contratado por el alcalde 
de Chicago, con el fin de com- 
batir y eliminar el crimen orga- 
nizado que asóla la ciudad en 
estos años veinte. Pero es un tra- 
bajo difícil a pesar de la catego- 
ría de Mike, pues ha de enfren- 
tarse cuerpo a cuerpo contra los 
cinco grandes jefes de la mafia 
y sus respectivos secuaces que 
tienen dominada y aterrorizada 
a toda la ciudad. 

El juego consta de noventa y 
dos pantallas por las cuales ten- 
drás que ir con todos los senti- 
dos ya que en el lugar más ines- 
perado aparecerá alguno de los 
grandes capos, nombre con los 
que se les designa a los maño- 
sos más importantes y sus esbi- 
rros, sin darte tiempo al menos 
de escapar, pero tu misión no 
sólo es ésta, sino que debes eli- 
minarlos para que Chicago 
vuelva a ser la ciudad de antes. 

Cada vez que en un barrio 
consigas eliminar al gran maño- 
so, junto con él irán desapare- 
ciendo sus esbirros y no tendrás 
que volver a esa zona. Para más 
datos te diremos una referencia 
de los mañosos a los cuales de- 
bes batir: Roddy Buldog, jefe de 
los atracadores; Jonhny Fan- 
dango, amo y señor de los con- 
trabandistas por herencia de fa- 
milia; Franky Frondasio, co- 
rrupto policía que de vez en 
cuando hace la vista gorda; y El 
Padrino, su historia es de sobra 
conocida. 

Otro factor que debes tener 
en cuenta es que no sólo recibi- 
rás el fuego enemigo de tus ene- 



migos mas cercanos, sino que 
en las diferentes casas que for- 
man la ciudad se encuentran ex- 

torsionadores que tirarán car- 
gas de dinamita sobre ti, produ- 
ciéndote un estado de embria- 
guez, que te pondrás a dar vuel- 
tas como un loco, habrás perdi- 
do una vida. 

Cuentas tan sólo con el silen- 
cio de la noche, tu intuición y 
una pequeña ametralladora, 
que será tu fiel compañera, pero 
las balas se acaban, sólo po- 
drás conseguir más munición 
cuando mates a un esbirro, pues 
éste dejará su munición la cual 
debes recoger rápidamente y 
podrás continuar tu misión. 

Para aquellos que no tengáis 
joystick, podréis utilizar algu- 
nas teclas de función del tecla- 
do, pero esto supone mayor ha- 
bilidad porque los movimientos 
deben ser muy concisos, equili- 
brados y rápidos, ya que una vez 
se abra el fuego no tendréis un 
sólo momento tranquilo. 

Intentad moveros por todas las 
avenidas de la gran ciudad y 
aniquilad a todos los mañosos, 
os acompañará un bonito esce- 
nario, el cual nos simula los edi- 



ficios, las avenidas e incluso los 
lugares de reunión de estos 
grupos tan corrompidos como 

ellos mismos. 

Nuestro inspector Mike Bron- 
co, enmarcado en ese conjunto 
de edificios que forman el esce- 
nario, a veces resulta un poco 
dificultoso de ver, ya que la indu- 
mentaria de que le han provisto 
son colores muy pálidos en rela- 
ción al entorno y en cuanto a los 
esbirros la monocromía de su fi- 
gura nos hace diferenciarlos 
más fácilmente, pero siempre 
se puede mejorar. 

El continuo detonar de las 
bombas y los disparos puede 
hacer un poco aburrido el jue- 
go, pero esto es un elemento ac- 
cesorio. 

¡Animo, superdetective!, a re- 
correr toda la ciudad y elimina 
uno por uno los reyes del ham- 
pa. 



Puntuación: 
Presentación: 8 
Claridad: 7 
Rapidez: 7 
Adicción: 8 




26 MSX 



Programa: Dinamite Dan 
Tipo: Juego 

Distribuidor: Mirrorsoft 

Formato: Cassette 



Este programa es otra de las 
creaciones que nos llegan di- 
rectamente desde Inglaterra. Su 
presentación es sin duda alguna 
excelente, y su contenido, no 
desmerece en absoluto el con- 
junto del juego en sí. 

Teniendo como base el polé- 
mico mundo de la guerra fría, 
claro está, reducido a un simple 
juego y sin consecuencias, Di- 
namite Dan, es la creación de un 
héroe moderno, que como 
mayor preocupación debe sal- 
var al mudno de los designios 
de un loco, el Dr. Blitzen y su 
ayudante Donna, enemigos que 
nos aguardarán a lo largo del 
programa y que son los más pe- 
ligrosos. 

Llegarás al centro experi- 
mental del Dr. Blitzen y tienes 
como primera misión librarte de 
los astutos guardianes que son 
criaturas de todas las especies 
y los cuales no sólo te entorpe- 
cerán el camino, sino que co- 
brarán cada vez que caigas en 
sus redes una vida más. Empe- 
zarás el juego con nueve vidas. 

Irás descubriendo nuevos pa- 
sadizos e irás poco a poco des- 
cubriendo dónde se encuentra 
el escondite del Dr. Blitzen y su 
amiga Donna, otra de las misio- 
nes que debes llevar a cabo, 
pues así no podrán volver a ate- 
morizar al mundo. 

Para resistir a las continuas lu- 
chas y enfrentamientos encon- 
trarás por los distintos bancos 
de pruebas, platos de alimentos 
y maravillosos postres que te 
darán la suficiente vitalidad y 
sumarás puntos. ¿Pero cuál es el 



principal objetivo de la misión?, 
destruir el último invento del Dr. 
Blitzen, que permitiría la domi- 
nación del mundo por una sola 
persona y, lo que es peor, con fi- 
nes maléficos. No puedes dejar 
que ocurra eso, es por ello que 
te lanzas al ataque y buscas 
aprovisionarte. Las armas con 
las que cuentas son muy pocas 
pero tienes la suficiente agili- 



go y te hará pasar una aventura 
entretenida. 

Nada hay que decir en cuanto 

a las características del progra- 
ma, en el aspecto técnico, pues 
no es que valoremos a los profe- 
sionales ingleses, pero el resul- 
tado está a la vista. 

Los sprites son totalmente di- 
ferentes a los que conocíamos y 




dad y rapidez para esquivar to- 
dos los monstruos que se aveci- 
nan contra ti, cuando llegues a 
sitios a los que no puedes pasar, 
tendrás siete cargas de dinami- 
ta para hacerlos explosionar 
por los aires, y no existirá pro- 
blema alguno. 

Intenta subsistir el mayor 
tiempo posible sin utilizar estas 
cargas ya que al final de la aven- 
tura se encuentra el principal y 
más terrible problema. 

Si cumples tu misión podrás 
escapar en el Zeppelin del Doc- 
tor, pero éste se encuentra tam- 
bién muy protegido por lo que 
no te será fácil huir, no obstante, 
no desesperes, es un buen jue- 



los elementos con los que nos 
sorprenden a lo largo del juego, 
como postres, efectos especia- 
les y un enrevesado mundo de 
ficción, sin duda le permite el 
calificativo de un juego genial. 

La acción se desarrolla rápi- 
da y la tensión es continua, a su 
vez es sencillo y no requiere 
gran esfuerzo. 



Puntuación: 
Presentación: 
Claridad: 6 
Rapidez: 7 
Adicción: 6 



MSX 27 



SOFTWARE 



Programa: Finders Kee- 

pers. 
Tipo: Juego. 

Distribuidor: DROSOFT. 
Formato: Cassette. 



Podríamos definir este juego 
como el espíritu de la imagina- 
ción y la fantasía reunidos. 

Las directrices que marcan el 
juego no son espectaculares 
pues sigue de forma uniforme 
las características de otros jue- 
gos similares que podemos en- 
contrar en el mercado, aunque 
esto no debe de servir para en- 
marcarlo en aquel tipo de jue- 
gos a los que todos hemos juga- 
do. 

Su creación gráfica, es uno de 
los elementos que le diferen- 
cian sumamente de los demás 
juegos de este tipo, ya que 
nuestro caballero andante y to- 
do a su alrededor encierra una 
misteriosa imaginación y un cui- 
dado trabajo en todos los ele- 
mentos que forman el conjunto, 
color y forma de sprites. Master- 
tronic, ha cuidado en detalle, 
especialmente los dibujos, tér- 
mino que podemos emplear ya 
que estos parecen verdaderas 
caricaturas, tanto por sus movi- 
mientos como por la acción que 
desarrollan y su representación 
gráfica. 

Nos trasladamos a Isbisima, 
un lugar en tu imaginación don- 
de te ocurrirán las cosas más in- 
verosímiles. El rey de país tiene 
un grave problema, es el cum- 
pleaños de su hija y no sabe que 
regarlarle, te ha encargado a ti 
que busques un regalo digno de 
su hija. Para ello te tienes que 
trasladar al castillo de Duendi- 
landia, donde puedes encontrar 



las cosas más variadas y extra- 
ñas pero a la vez más peligro- 
sas. 

Una plétora de extraños y mis- 
teriosos mostruos saldrán a tu 
paso, además de las espeluz- 
nantes sanguijuelas y cocos que 
te introducirán en los laberintos 
de los que jamás podrás salir... 
pero el juego no consiste sólo 
en esto irás recogiendo toda 
clase de elementos que encuen- 
tres a tu paso, los cuales te ser- 
virán muchas veces para inter- 
cambiar por otros más necesa- 
rios, o te permitirán el acceso a 
lugares jamás habitados por el 
hombre. 

Tendrás cuatro teclas de fun- 
ción designada para estos que 
haceres: G, para recoger obje- 
tos; T, para comerciar; D, para 
dejar caer y E para examinar, ya 
que esto es imprescindible no 



10» 



tregárselos al rey y entrar a for- 
mar parte de la esperada Tabla 
Poligonal, y entrar al servicio de 
su Majestad con los más distin- 
guidos honores. 

Debes dedicar la mayor parte 
de tu tiempo a recorrer todas las 
salas pues cuantos más objetos 
encuentres más posibilidades 
tendrás de salir con vida de la 
misión. Enfréntate a los mons- 
truos tan sólo cuando sea nece- 
sario y no pierdas nunca la cal- 
ma. 

La misión ya ha sido cumplida 
y el principal objetivo también, 
pasar un largo y entretenido ra- 
to. Veréis que a lo largo del pro- 
grama os acompaña una grada- 
ble música, o sintonía del juego 
que os divertirá y hace al pro- 
grama más singular. 




I™ROOtt OX 
CRSH 
£ e . ee 
OBJECTS 
£ 36 . 16 



THE KIMCS PRLRCE 



vaya a ser que transportes algo 
que no sea necesario. 

Tienes dos opciones a lo lar- 
go del juego o bien intentar con- 
seguir el mayor número de te- 
soros y escaparte con ellos o en- 



Puntuación: 
Presentación: 8 
Claridad: 7 
Rapidez: 7 
Adicción: 8 



28 MSX 



Programa: Fernando 

Martin. 
Tipo: Juego. 

Distribuidor: DINAMIC. 
Formato: Cassette. 



Tenemos ante nosotros un 
programa de creación made in 
Spain, el cual no es que sea una 



dad, rapidez y preparación, si 
optamos medir nuestras fuerzas 
frente a este coloso del balon- 
cesto. 

Cuando salgas a la cancha te 
encontrarás nervioso, preocu- 
pado y con deseos de hacer un 
buen partido, pero al ver quién 
es tu adversario..., las cosas 
cambian, claro que no es nece- 
sario que adoptes esta opción 
de juego, también pueden ser 
dos personas las que jueguen 






sublimación en el mundo del 
software pero es una contribu- 
ción interesante y agradable 
por el tema que trata, el cual ya 
habréis imaginado. 

El baloncesto, tanto en Espa- 
ña como en el mundo entero es 
un deporte que está haciendo 
furor entre la gente, incluso co- 
mo espectáculo. La NBA, es una 
liga de baloncesto en la que tan 
sólo 264 hombres pueden jugar 
y entre ellos se encuentra una 
de las estrellas favoritas de 
nuestro baloncesto, Fernando 
Martín, a quien va dedicado por 
entero este programa. 

Podremos disfrutar de un in- 
teresante encuentro de habili- 



entre ellos, con la particulari- 
dad, de que siendo tan personal 
el campo de juego y las técnicas 
puedas jugar bien con cursores, 
joystick, o teclado. 

¿Qué cosas puedes hacer en 
la cancha?, frente a «Martín», 
pocas cosas te podemos decir 
pero no te desanimes. 

Existen tiros de tres puntos, 
robo de balones y los tan de mo- 
da mates, de espalda, de lado o 
como mejor prefieras, todo ello 
unido a que el juego se puede 
desarrollar libremente pues el 
árbrito no suele estar muy aten- 
to a los golpes bajos, y tienes 
que estar siempre dispuesto a 
recoger los rebotes porque sino 
pasarás la partida sin enterarte. 



Consta de dos tiempos de du- 
ración, cinco minutos cada uno, 
excesivo a nuestro parecer, 
pues podría existir una opción 
que delimitase el tiempo. Lento, 
en toda la extensión de la pala- 
bra, cuando nuestro ídolo lleva 
la pelota nos parece imposible 
quitársela y además los dobles 
son facilísimos de hacer debido 
a la lentitud del salto, no se 
coordinan bien los movimien- 
tos. 

Carece completamente de 
sonido, tan sólo el aplauso del 
público que rompe un poco la 
monotonía de la acción y el cual 
resulta a veces innecesario. 

Color, se ve reflejado tan sólo 
en los marcadores, ya que la 
cancha y los jugadores sólo re- 
presentan los colores blanco y 
negro como base, no sabemos a 
qué puede ser debido esto, la 
única razón que se nos ocurre 
es para visualizar mejor los mo- 
vimientos, pero eso lo dejamos 
a vuestra crítica. 

Lo principal en este juego, es 
familiarizarse lo mejor posible 
con los mandos que emplees y 
podréis realizar jugadas y ac- 
ciones bonitas, todo es intentar- 
lo. 

Debemos elogiar la caricatu- 
ra de Fernando Martín que apa- 
rece el inicio del programa y en 
la que se encuentra muy favore- 
cido, es la realidad llevada al or- 
denador. 

Unas dosis de entrenamiento 
y una gran ilusión os puede ha- 
cer llegar como a F. Martín don- 
de nunca antes nadie había lle- 
gado. 

Puntuación: 
Presentación: 6 
Claridad: 7 
Rapidez: 6 
Adicción: 7 



MSX 29 




Núm. 1 

¿Qué es el MSX? Su BASIC, 
periféricos, programas, 
software. 



Núm. 4 

Las comunicaciones entre 
ordenadores, la jerga infor- 
mática, trucos, 




Núm. 2 

Generación de sonido. 
MSX-DOS, el ordenador por 
dentro, programas, noticias. 




Núm. 5 

Comandos de entrada/sali- 
da, el BASIC MSX compara- 
do con Spectrum y Commo- 
dore 64 Código Máquina. 



Núm. 3 

Los joysticks, 256 caracte- 
res programables, Z80 co- 
razón de león, compro/ven- 
do/cambio. 




Núm. 6 

Los 8 magníficos (test gi- 
gante), el bus de expansión, 
los misterios de la graba- 
ción, programas. 



Núm. 7 

Analizamos el Generador de 
Sonido. Aplicaciones mate- 
máticas con el ordenador. 




Núm. 8 

Compact Disc. el periférico 
del futuro. Test: Dynadata 
DPC-200. Continuamos con 
la memoria de video. Libros, 




Núm. 9 

Características técnicas del 
Compact Disc. Tratamiento 
de datos. Test: Quick Disk. 
Trucos, libros, noticias, 



Núm. 10 

Características de la II Ge- 
neración. Los secretos del 
modo Screen 2. Test: los 
plotters. Aplicaciones: ma- 
trices y determinantes. 

m 




lOflt 

LOGO, un lenguaje educati- 
vo. Screen 3: el modo multi- 
color. Aplicaciones: siste- 
mas de ecuaciones. BASIC 
para principiantes. Test: 
Seikosha SP-1000MX 




Núm. 12 

SVI-328: precursor del es- 
tándar. Aplicaciones: siste- 
mas de ecuaciones II. Códi- 
go Máquina. Test: Toshiba 
HX-20. 



DE EJEMPLARES ATRASADOS 



ESTOS SON LOS EJEMPLARES DE MSX MAGAZINE APARECIDOS EN EL MERCADO 
CON UN RESUMEN DE SU CONTENIDO 




osa* asa ■ 




VG8235 

LA n GENERACION EN MARCHA 



Núm. 13 

VG-8235, la I generación en 
marcha. SVI-31 8/328: aná- 
lisis interno. Test: Yamaha 
CX5MyCX5M II. BASIC: las 
variables alfanuméricas. Las 
matemáticas y el ordenador. 



MLGlyMLG3 








I 




Instrucciones 
ocultas 
del Z80 






Libros, 
proar amas. 




■i 

üPft 







Núm. 17 

Robots, trabajadores infati- 
gables. Cómo ahorrar me- 
moria. Test: Mitsubishi ML- 
(31 y ML-G3. Instrucciones 
ocultas del Z-80. El proce- 
sador de vído del SVI-31 8/ 
328. Desensamblador. 




Núm. 14 

Controle sus errores de pro- 
gramación. Aplicaciones 
matemáticas: interpolación. 
Memoria de Video: los spri- 
tes. Código Máquina: los re- 
gistros dobles. 




Núm. T8 

Los diskettes al descubierto. 
El BIOS de la memoria de 
video. Test: interface RS- 
232C. Unidad de discos ML- 
F30D. Utilización de fiche- 
ros. SVI-31 8/328, SCREEN 
2. 




9 

ff fkifo 



BASIC 

Dio<¿rnrrv»\ óe 



¿PORQUE ESUWOB.BASK? 



Núm. 15 

¿Porqué es lento el BASIC? 
El procesador de video del 
SVI-31 8/328. Test: Sony 
HB-500P. BASIC: los dia- 
gramas de flujo. Los modos 
de pantalla. 





Núm. 16 

Dos gigantes frente a frente. 
Test: VC-10, un oscilosco- 
pio muy especial. Síntesis 
de voz. Utilidades de la RAM 
Memoria de video: instruc- 
ciones VPEED y VPOKE. 




PARA HACER SU PEDIDO, RELLENE ESTE CUPON, HOY MISMO Y ENVIELO A MSX MAGAZINE 

BRAVO MURILLO, 377. Tel. 7337969 - 28020 MADRID 



Ruego me envíen los siguientes números atrasados de MSX 

al precio de 300 ptas. cada uno. Cuyo importe abonare: 

□ POR CHEQUE □ CONTRA REEMBOLSO □ CON MI TARJETA DE CREDITO 

□ AMERICAN EXPRESS □ VISA □ INTERBANK 

I 



Número de mi tarjeta 
Fecha de caducidad 

NOMBRE 

DIRECCION 

POBLACION 

PROVINCIA 



ñu 



ir 



CP. 



Estática de fluidos 



) ) ' > 




^1 



El programa muestra hasta qué 
punto el ordenador'puede conver- 
tirse en un compañero más, a la 
hora de resolver los complicados 
cálculos físicos que plantea esta 
rama de la ciencia. 

Se trata de un programa educa- 
tivo que nos enseña cuatro ecua- 
ciones básicas de la estática de 
fluidos, permitiéndonos operar 
con ellas. Estas cuatro ecuaciones 
son las siguientes: 

1 . Ecuación fundamental de la 
estática de fluidos. 

2. Principio de la prensa hi- 
dráulica. 

3. Principio de los vasos co- 
municantes. 

4. Principio de Arquímedes. 
El programa está pensado para 

que la aplicación práctica de las 
ecuaciones se realice utilizando el 
sistema internacional de unidades 
o M.K.S., y por ello trae un aparta- 
do dedicado al cambio de unida- 
des. 

La presentación en pantalla es- 
tá bien y facilita el entendimiento 
de las dintintas fórmulas y su apli- 
cación. 

Rodolfo Müller 
Cádiz 



10 ttttmmttmtmtmmtmt 


180 


PRESET(30,150) :PRINT#1 , "FLUIDOS" 


20 '* 




* 


190 


FOR X=l TO 1500:NEXT X 


30 '* 


ESTATICA DE FLUIDOS 


t 


200 


CLS:PRESET(20,10) :PRINT#1 , "Use el 


40 '* 




t 




it 


50 't 


POR: 


1 


210 


PRESET(20,85) :PRINT#1 /'sistema" 


60 't 




i 


220 


PRESE T (40,150) :C0L0R 12tPRINT»l ," 


70 '• 


RODOLFO MUELLER 


* 






80 '* 




t 


230 


FOR X = l TO 2500:NEXT X 


90 tmttttmsmttttmmm 


ti* 


240 




100 ' 






250 


MÍ="C1U20L3E3F3L3" :N$="C1D20L3F3E 


110 ' 


PRESENTACION Y MENU 






3L3" 


120 ' 






260 


DI!"l R*<7> ,N(7) ,T$(7) 


Í30 ' 






270 


POR X=l TO 7 


1*10 LLb SLuLUK 4 , 1 , 1 rbUKtbN 3 




280 


READ R* (X) ,N(X) ,T$ (X) 


1~<V UrtN " 


bKr : l-UK ÜU1PUT AStl 




290 


NEXT X 


160 PRESET(10,20) :PRIhÍT#l , "ESTATICA" 


300 


CLS:C0L0R 12,1:SCREEN 0 :KEY OFF 


i /v i-KtiJt i < 11010 ,a:'j :rKiNi*i , ut 




310 


PRINT :PRIN T 



LOS JUECOS ELECTRONICOS 



32 MSX 



PREMIO DE 7000 PTS 



32¡? 
33fl 

340 

350 

360 

370 

380 

390 

400 

410 
420 
430 



Ecuació- -fúndame 
Prensa hidraulic 
Vasos común icant 
Ppio. de Arquíme 
Conversión de un 



450 
460 
470 
480 
490 

500 

510 
520 
530 



PRINT" TECLA OPCION" 
PR I NT " = ======= === = = = ======== = 

======" : PRINT 

PRINT" 1 

ntal" : PRINT 
PRINT" 2 

a":PRINT 
PRINT" 3 

es" :PRINT 
PRINT" 4 

des" :PRINT 
PRINT" 5 

idades" :PRINT 
LOCATE 3,19 ' 

PRINT");) PULSE LA OPCION DESEADA 

< < < " 
A*=" " 

A$=INKEY*:IF A$="" THEN 420 

IF ASC(A$)<48 OR ASC(A*)>53 THEN 

420 
A=VAL(A$) 

ON A GOSUB 510,910,1340,1790,2190 
GOTO 300 

EC. FUNDAMENTAL 



CLS:C0L0R 1 ,12,12¡SCREEN 2 
OPEN "6RP : " FOR OUTPUT AS#1 
LINE(21 ,30)-(139,99) ,4,BF 



540 DRAW " BM2 1 , 27C4D3 " : DRAW "BM139 , 27C4 
D3" 

550 PSET(80,6) :DRAW N$ 
560 LINE(110,30)-(110,80) 
570 LINE(108,32)-(112,28) 
580 LINE(108,82)-(112,78) 
590 CIRCLE(50,80) ,1,1, ,,1.4 
600 PRESET(85,12) :PRINT#1 ,"P" 
610 PRESET(60,75) :PRINT#1 ,"P'" 
620 PRESET(115,50) :PRINT#1 ,"h" 
630 PRESET(120,10) :PRINT#1 ,"EC. FUNDA 
MENTAL" 

640 LINE(150,50)-t250,78) ,15,BF 

650 PRESET ( 160 ,60) :PRINT# 1 , "P ' =P + b *g t 

h" 

660 PRESET(8,110) :PRINT#1 ,"La presión 
en un punto del lí- quido es i 
gual a la presión P en la supe 
r-ficie más el peso de" 



670 



680 



690 

700 

710 
720 
730 
740 
750 

760 

770 

780 

790 

810 
820 
830 

840 
850 
860 
870 
880 
890 

900 

910 
920 
930 
940 
950 



PRESET<8,134) :PRINT#1 , "una column 
a líquida que tenga por base 1 
a uridad de superfi- cíe y por 
altura la distancia" 

PRESET (8,158) :PRINT#1 /'vertical 
entre dicho punto y la super+ici 
e libre." 

PRESET (30,185) :PRINT#1 ,">>) PULS 
E UNA TECLA ■ : " :A*=" " 

CLOSEil 

A$=INKEYí:IF A*="" THEN 710 



960 
970 
980 



CLSrCOLOR 12,1:SCREEN 0:P1=0:D=0: 
H=0 

PRINT:INPUT"Presión en superficie 

; P=";P1 
PRINT : INPUT" Densidad del líquido: 
ó=" ;D 

PRINT : INPUT"Altura punto-superf íc 

íe; h=";H 
P2=Pl+DtHt9.8:P=CSNG(P2) 

PRINT"P'=" ;P;" Pascal" 
LOCATE 0,20 

PRINT"- DESEA CALCULAR OTRO VALOR 

(S/N)? -":A$="" 
A$=INKEY$:IF Af="" THEN 840 
IF A$="S" OR A$="s" THEN 750 
RETURN 

* PRENSA HIDRAULICA 

' = = = = = = = = =>;= = = = = = = = 

/ 

CLS:COLOR 1,14,14 :SCREEN 2 

LINE(21 ,36)-(39,99) ,4,BF 

LINE-(149,81) ,4,BF 

LINE-(101 ,36) ,4,BF 

DRAW"BM21 ,29C4D3" :DRAW"BM39 ,29C4D 

3" :DRAW"BM149,29C4D3" :DRAW"BM101 

,29C4D3" 
LINE(21 ,32)-(39,35) ,1,BF 
LINE(101 ,32)-(149,35) ,1 ,BF 
LINE<110,20)-(140,31) ,8,BF 



990 PSET(30,8) :DRAW N$ 
1000 PSET(125,60) :DRAW M$ 
1010 OPEN "GRP : " FOR OUTPUT AS#1 
1020 PRESET(35,15) :PRINT#1 ,"-f " 



1030 PRESET(45,30) :PRINT#1 ,"s" 
1040 PRESET (130, 45) :PRINT#1 ,"F" 
1050 PRESET(155,30) :PRINT#1 , "S" 
1060 PRESET (100 ,8) :PRINT#1 , "PRENSA HI 

DRAULICA" 
1070 LINE(170,50)-(246,78) ,12,BF 
1080 PRESET (180,60) :PRINT#1 ,"F=f tS/s" 
1090 PRESET(8,110) :PRINT#1 ,"La fuerza 
obtenida en el cilin- dro grand 

e es igual a la -fuerza aplicada 

al cilindro pequeño," 
1100 PRESET (8, 134) :PRINT#l,"multiplic 

ada por la relación entre las 
áreas de los dos ém- bolos." 
1110 PRESET (30, 185) :PRINT#1 ,">>> PULS 

E UNA TECLA «<" :A$="" 
1120 CL0SE#1 

1130 At=INKEYÍ :IF Aí="" THEN 1130 
1140 ' 

1150 ' ================ 

1160 ' 

1170 CLS:C0L0R 12,1:SCREEN 0:F2=0:S2= 
0:S1=0 

1180 PRINT:INPUT"Fuerza aplicada; 
f=" ;F2 

1190 PRINT : INPUT" Area del émbolo meno 

r; s=";S2 
1200 IF S2=0 THEN 1170 
1210 PRINT : INPUT"Area del émbolo mayo 

r; S=";S1 
1220 F1=F2*S1/S2:F=CSNG(F1) 
1230 LOCATE 10,12 
1240 PRINT"F=" ;F;" Newton" 
1250 LOCATE 0,20 

1260 PRINT"- DESEA CALCULAR OTRO VALO 

R (S/N)? -":A$="" 
1270 A$=INKEY$:IF A$="" THEN 1270 
1280 IF A$="S" OR A$="s" THEN 1170 
1290 RETURN 

1300 ' 

1310 ' VASOS COMUNICANTES 
1330 ' 

1340 CLS:C0L0R 1 , 14 , 14 :SCREEN 2 
1350 LINE(21 ,50)-<39,-99) ,4,BF 
1360 LINE-(129,81) ,4,BF 
1370 LINE- (111 ,65) ,4,BF 
1380 DRAW"BM21 , 19C4D30" :DRAW"BM39 , 19C 
4D30" 

1390 LINE(111,65)-(129,22) ,12, BF 
1400 DRAWBM129 , 19C4D46" :DRAW"BM1 1 1 , 1 
9C4D46" 



1410 DRAW"BM45,50C4D15R60U43" 
1420 LINE(43,52)-(47,48) ,4 
1430 LINE(43,67)-(47,63) ,4 
1440 LINE<103,24)-<107,20) ,4 
1450 LINE(103,67)-(107,63) ,4 
1460 OPEN "GRP : " FOR OUTPUT AS#1 
1470 PRESET(50,53) :PRINT#1 , "h2" 
1480 PRESET(85,38) :PRINT#1 , "hl" 

1490 PRESET(70,86) ,4 :PRINT#1 , " b2" 
1500 PRESET(113,38) :PRINT#1 , "61 " 
1510 PRESET (100, 2) :PRINT#1 , "VASOS COM 

UNICANTES" 
1520 LINE(140,40)-(248,68) ,10,BF 
1530 PRESET (150,50) :PRINT#1 ,"61/62=h2 

/hl" 

1540 PRESET (8,110) :PRINT#1 , "Si ambos 

vasos poséen el mismo líquido 

el nivel alcanzado se- rá el mi 

smo.Si hay dos líquidos" 

1550 PRESET (8, 134) :PRINT#1 , "distintos 

las alturas alcanza- das serán 

inversamente propor- clónales 

a las densidades res- pectivas. 
ii 

1560 PRESET (30, 185) :PRINT#1 ,">>> PULS 

E UNA TECLA <:'<<" :A*="" 
1570 CL0SE#1 

1580 A*=INKEY$:IF A$="" THEN 1580 
1590 ' 

1600 ' ============= 

1610 ' 

1620 CLS:C0L0R 12,1:SCREEN 0:01=0:02= 
0:H1=0 

1630 PRINT:INPUT" Densidad líquido 1; 
61 = " ;D1 

1640 PRINT:INPUT" Densidad líquido 2; 

62=" ;D2 
1650 IF D2=0 THEN 1620 
1660 PRINT:INPUT" Altura 1 ; 

hl = " ;H1 
1670 H2=H1*D1/D2:H=CSNG(H2) 
1680 LOCATE 10,12 
1690 PRINT"h2=" ;H;" Metros" 
1700 LOCATE 0,20 

1710 PRINT"- DESEA CALCULAR OTRO VALO 

R (S/N) ?" :A$=" " 
1720 A$=INKEY$:IF A$="" THEN 1720 
1730 IF A$="S" OR A$="s" THEN 1620 
1740 RETURN 
1750 ' 



LOS JUECOS ELECTRONICOS 



1760 
1770 

1780 
1790 

1800 

1810 
1820 

1830 
1840 
1850 
1860 
1870 
1880 

1890 

1900 

1910 



1920 

1930 

1940 
1950 
1960 
1970 
1980 
1990 

2000 
2010 

2020 

2030 
2040 
2050 
2060 
2070 

2080 

2090 



PPIO. DE ARQUIMEDES 



CLS:COLOR 1 ,12,12:SCREEN 2 
LINE(21 ,42)-<139,99) ,4,BF 
LINE(50,30)-(110 t 60) ,8,BF 
DRAW"BM21 ,39C4D3" :DRAW"BM139 ,39C 
4D3" 

PSET(B0,6) :DRAW N$ 

PSET(80,84) :DRAW M$ 

OPEN "GRP : " FOR OUTPUT AS#1 

PRESET(85,15) :PRINT#1 ,"W" 

PRESET ( 85 , 68 ) ¡PR I NT# 1 , " E " 

PRESET(102,2) :PRINT#1 ,"PPIO. DE 

ARQUIMEDES" 

LINE(155,50)-(247,78) ,14,BF 
PRESET (165, 60) :PRINT*1 ,"E=Vltólt 
9" 

PRESET (8 , 118) :PRINT#1 , "Todo cuer 

po sumergido en un lí- quido est 
á sometido a un empuje dirigido 
hacia arriba igual al" 



PRESET(8, 142) :PRINT#1 , "peso del 

-fluido desalojado." 

PRESET (30, 185) :PRINT#1 ," PULS 

E UNA TECLA <<<":A$="" 

CL0SE#1 

A*=INKEY$:IF A$="" THEN 1950 



CLS ¡COLOR 12,1:SCREEN 0:V=0:D=0: 

1*1 = 0 

PRINT:INPUT"Volumen desalojado; 
Vl = " ;V 

PRINT : INPUT" Densidad del líquido 
; 61 = " ;D 

PRINT:INPUT"Peso del cuerpo; 
W=" ;W 

E=V*D*9.8:E=CSNG(E) :W=CSNG(W) 
LOCATE 10,12 
PRINT"E=" ;E;" Newton" 
LOCATE 10,15 

IF W>E THEN PRINT"E1 cuerpo se h 
unde" 

IF W=E THEN PRINT"Cuerpo en equi 
librio" 

IF W<E THEN PRINT"E1 cuerpo flot 



2100 

2110 

2120 
2130 
2140 
2150 
2160 
2170 
2180 
2190 
2200 
2210 

2220 
2230 
2240 
2250 

2260 
2270 

2280 
2290 
2300 
2310 
2320 

2330 

2340 
2350 
2360 
2370 
2380 
2390 
2400 



2410 
2420 

2430 
2440 
2450 
2460 



2470 



LOCATE 0,20 

PRINT"- DESEA CALCULAR OTRO VALO 
R (S/N)"> -" :A$="" 
A$=INKEY$:IF A*="" THEN 2120 
IF A*="S" OR A$="s" THEN 1990 
RETURN 

CONVERSION DE UNIDADES 



CLS:C0L0R 5,1:V=0 

FOR X=l TO 7:V=V+2 

LOCATE 2,V:PRINT X:L0CATE 7,V:PR 

INT R$(X) 

LOCATE 19,V:PRINT"<<>> ";TS(X) 
NEXT X 

LOCATE 5,18 ' 

PRINT"- PULSE LA OPCION DESEADA 



A$=INKEY$:IF Af= 



THEN 2260 



IF ASC(A$)<49 OR ASC(Aí)>55 THEN 
2260 

S=VAL(A$) :BEEP:BEEP 
LOCATE 10,20 

PRINT"sentido < ó > , '":A$="" 

A*=INKEY$:IF Af="" THEN 2310 

IF A$<>"<" AND Aí<>"," AND A$<>" 

>" AND A$<>"." THEN 2310 

IF A$="<" OR A$="," THEN SWAP Rí 

(S) ,T$(S) :N(S) = 1/N(S) 

CLS:N(S)=CSNG(N(S) ) :C=0 

INPUT "CANTIDAD:" ;C 

LOCATE 4,9 

PRINT C;R$(S) ;" son:" 

LOCATE 4,11 

PRINT CtN(S) ;T$(S) 

IF A$="<" OR A*="," THEN SWAP R* 



(S) ,T$(S) :N(S) = 1/N(S) 
LOCATE 0,20 

PRINT"- DESEA CALCULAR OTRO VALO 
R (S/N)? -":A$="" 
A$=INKEY$:IF A$="" THEN 2430 
IF A*="S" OR A*="s" THEN 2190 
RETURN 

DATAD i ñas, 1E-05, Newton ,Kilopondi 
os ,9 .8 , Newton , Atmósferas ,101325, 
Pascal ,Mi 1 ibares , 100, Pascal 
DATATorr, 113. 32, Pascal .Litros, 

1E-03 ,nr3 ,grs . /c .c . ,1000 ,Kg ./m A 3 



msx 35 



Aplicaciones 
matemáticas 



unque las coordenadas 
rectangulares tienen una 
representación algo rígida 
en las definiciones de 256x192 al 
no coincidir los pixels del código 
entre la salida MSX y los televiso- 
res encargados de visualizarlos, 
consideramos útil el análisis de 
este caso para el aprendizaje y al- 
gún otro problema que pueda sur- 
gimos. 
Asi: (ver figura 1) 

aplicamos la fórmula que relacio- 
na las coordenadas rectangulares 
entre sí y con respecto al radio de 
una circunferencia: 

X = r 2 - y 2 Y = r 2 - x 2 

y su representación geométrica: 




X,Y 



Los bucles 60-90 y 100-130 in- 
dican los puntos relativos para ini- 
ciar y finalizar la circunferencia por 
este método. 




MODBLO 27B 





\<S CIA 


20 


INPUT M RADIO" |H 




INPUT "ABC ISA" tX 


40 


INPUT "ORDENADA"! Y 




SCREÜSN 2 


60 


FOR I ■ X-* TO X4fl STEr • 5 


7© 


J-Y3QB( (R*2 H (X-I )*2 ) ) 


80 


PSBT (I,J) 


90 


NEXT 


100 


POR I-X+B TO X-R STEP -.5 


110 


J-Y«QR( ( R*2 M (X-I )*2 ) ) 


120 


PSET (I,J) 


130 


NSXT 


135 


CIRCLB (X,Y), R4-20, 5 


140 


GOTO U0 



Figura 1 



La línea 135 dibuja una tenue 
circunferencia por esterografía 
para permitir la comparación de 
resultados elocuentemente entre 
el desarrollo propuesto y la aplica- 
ción de la instrucción CIRCLE. 

La lentitud e imperfección no 
son óbice para aplicar a ciertas 
utilidades gráficas de arcos, por 
ejemplo, rotulaciones y otras co- 
mo ya veremos. (Ver figura 2). 

NOTA: Advertimos que en las 
líneas 80, 1 1 0, 1 20 y 1 40 se mane- 
ja la variable O a la que no hay que 
confundir con el cero = 0. 

Este ejemplo aplica las razones 
trigonométricas por medio de las 
relaciones en coordenadas pola- 
res, líneas 1 1 0 y 1 20. Por lo demás 
es muy parecido al modelo 2\xR. 

En la línea 1 30 se resuelve la re- 
petición para PSET por medio de 
un bucle artificial entre 100 y 150 
en lugar del conocido FOR/next. 

En la 1 40 la variable V aumenta 
un paso cada vez hasta igualar a 
P, es decir, los puntos definidos 
(máximo) que indica su término. 

En aplicaciones gráficas puede 
resultar interesante el origen y 



MODELO TRIG 

19 CL3 

20 DEF3HG A-Z 

30 INFUT "n« PUlíTOS DBFIKICIOH M j P 

4© IHPUT "RADIO"! R 

50 PRIBT "COORDENADA" 

60 IlíPOT M X M | X 

7© INPUT "Y M J Y 

80 O-0t I0-2*3*14/P 

90 SORBEN 2 

100 IP V-P THEN 160 

110 AF-X4-R COS(O) 

120 OF-Y+R SIH(O) 

130 PSBT(AP f 0P) 

140 0-0«0i V-V+1 

150 GOTO 100 
160 GOTO 160 



10 ISíCOlOR l&bl 
20 ,=128:7=68:R=Í8 

- : : '. z í;- $?:*SS*1 
56 SCRESí : 
60 £05' B c >898 

~0 i : Eít=o! ES =6í El=0¡ ££ =8? EE=0; EF=8 

P5 ; r ?-= : 17 ÍHEN 4$É 

í8 $ n :ooo.::oo- 1206,13^1400,1 

1660* 1738* 1868? i 338* 266841®» 2^f2 
3¿8, 2468*2560 

33 i r N>9 " J E:i I; =4 E.5E I>í=8 

M n8Cl£C233»32)fl5j2síflM S7S?<&8)*2 

¿3 COLt* 2 20- 1 X , 3¿» > : COLOR ItffclHf 



Figura 2 



8 D0LC3S 1 : z f E T 22 1 - 1 - , 30 > : CÜLOR UPRINT 
*1.n:CClOR Í0 

?0 50SIS £É8:S8SüB 7680 

<2 P^TÜSSí iéé) 

*3 PRIHT*1,"SGlüCI0N = ■ 

95 PvESE"' 157? 160) 

98 PRIHTIl/SSXI^IO = ?■ 

íéé G jSlBFOO 

200 ^=0:CT=0:TT=0::30íUS 3¿66:PRESETÜ8, 
¡*fc:PRJHT#l, ••E.iCTü".: il = ,, ;M*<6>:Q0SUB 48 

00 

200 jCSuE; S900J6OS1S 8S80:6G&J8 8888:801 

408 60TC ?000 

:00 CfiTn 1,2,3,4.5 ? ¿ ? I660,1 
Sil ühíh UZthhUliWñfí 




ORIGSH 



SÜFTIDO de GIBO 
Dextrógiro Levógiro 



X * H 




X - H 
Y - H 




X 4. H 
Y - R 



X - fi 



Figura 3 



sentido de giro. Véase el esquema 
siguiente con el sentido de giro de 
las agujas del reloj; las dos prime- 
ras; y las dos últimas en el contra- 
rio. (Ver figura 3). 

Sustituyendo en las líneas 1 1 0 y 
120 las relaciones X — R por las 
correspondientes en esta figura se 
obtendrán los inicios y sentidos de 
giro deseados. 

Aprovechando un proceso si- 
milar vamos a efectuar un análisis 
de su aplicación a los polígonos 
regulares. En este caso la calidad 
de los gráficos es deficiente, pero 
variando la precisión de Pl y con 
un tamaño adecuado de cada 
gráfico y rellenándolo las figuras 
resultarán aceptables: (Ver figura 
4). 

Salvo ligeras variantes este mo- 
delo es similar al anterior. Se soli- 
citan la coordenada y el radio y se 
añade el número de lados que se 
deseen. 

Por medio del primer bucle de la 
línea 100 a la 150 se sitúan los 
puntos correspondientes a los 
vértices del polígono deseado. 



526 DfiTfi 

539 Dh~h 

548 ESÍTÍ) 

358 Dhíh 

568 Í)hTh 

576 DfiTÍI 

533 DhTm 

598 bfifñ 

666 ¿hTh 

618 DhTk 
888>4 

628 t'íiTH 

63Ü DHÍH 

646 :-hth 

2/>7:66, : 

658 mz 



1,2, U3 ? 1,4,3368,1 
65536,256, ;6,4v2,t.4i, 4888,4 

C,F,I,Ui ? G,3889,l 
R8,DE»6HfJKiíMf0Pf388B9i2 

D i OflG » '.i IJOT, E[£L£ i j C f 6 8881 1 1 
2,8, 4,fr,6,F, 1588,1 
27,28, 13íZ,SiíBi3808íJí 

F p) , ÜílfiR ; í'ÑKÜ , HkOí'1 » ROi'TH , Üf'íiR » 3 

65, 15,45, 135,465,1215,4666,4 
iMX> UX,X11,11íX,X111i3888i4 

ft(l>,3(2>,yí2&>,Z(27),ySl),Xí5 

15, 1 1 11 ? r ? iéí í$88> th 4@@9,2 



"3^ : r Ff=-* , "^::¿£.£E"í^f :8e^j&9e 

360 3K=3;;t;::f:; ; 3 ~-E;- Cr.=.}: • : =íP-t:iOT 
¡ 300 

T 

8 18 GCTO 706 

398 Ir lENíT*)=lEN' ''!í^;)ñnD TIO» 6 - 
EN 868 

960 [f !*=*»<&) TriEh 266 ELSE 918 

m ***iwm 

926 CT=CT+l:IF CT=UhliM5(7» THEH CT=8:6 



aplicaciones 



Como después se trazan los la- cada lado como una línea recta con sus correspondientes DIM en 

dos, se toma el número L en la (UNE) entre los datos de coorde- la línea 20 que los define. Por el 

línea 100 hasta un punto más (L+ nadas que previamente se han al- primer bucle, línea 125, los carga. 

1 ) como último trazo. El bucle 1 00 macenado en: Posteriormente la línea 1 80 cie- 

a 1 50 indica, pues los puntos ne- Fo/ní?nr» v r %í?no^ rra el citado bucle y la 1 90 rellena 

cesanos y el 160 a 180 instruye 1 ' y y 1 el polígono trazado, simplemente 



MODELO POLIG 110 J-X4-B # COS( a) 

10 CL3 120 K-Y+R*SIN(a) 

20 DEFSNG A-Zi DOÍ #(200)1 DIM Gjí(20O) 125 f>(l)-Jt Gjí(l)-K 



30 INPUT M N« da LADOS" ; L 
40 INPUT "RADIO" i R 
50 PRINT "COORDENADA CKNTIO" 
60 INPUT "X"| X 
70 INPUT "Y"| Y 
80 A-0» B-2T3. 14A 
90 SCREEN 2 
100 POR 1-1 TO L4-1 



130 PSET(J,K) 
140 A-A4-B 
150 NEXT 

160 F0R 1-1 TO L 

1 70 LINB ( F>( I ) , G>( I ) )-( FJ¿( 1+1 ) ,G*( 14-1 ) ) 

180 NEXT 

190 PAINT(X,Y) 

200 GOTO 200 



Figura 4 



OTO S7y 

930 IFR$=''" T HEN91yELScTí=TíThf¡:30T!j:^y 

978 ¡WT2K97D8&6&6 fl 

'■'l &TÜÉUd>iC0L0R líPRIHT#l*" íIENPQ 

M CT=y:TT=TT+i:IF TT= 6 T-HEN TT=8:0QTO 
180 

m FOPT=lT0l5y:N£KTT 

¡85 PRESET<5> 18)!CCtGR i5iPfcíMT#l» "++*++ 

m r>'ES£T''5; í>:CDL0P !5:PRWTil 



998 6CT0 975 
1880 RESTORE 5&0:8£T'jRN 
1100 RESTORE 510SRETURN 
1200 RESTORE 520: RETIRA 



1380 RESTORE 53y:RETüRN 
1406 RESTÜRE 546:RETURH 
I5ü6 RESTOSE 59B*REHSN 
1688 RESTÜRE 56¿i:RETüRN 
1780 RESTARE 578iR£TLtRN 
1800 RESTORE 580:RETüRN 
1980 RESTORE KWRETÜRH 
20Ü0 RESTüFE 600ÍRETURN 
2108 RESTÜRE 6Í0:RETURN 
2200 RESTORE 620:RE7UP,N 
2390 RESTORE 63y:RE7üRH 
2*80 RESTÜRE :4ü:S£:¡'Rm 
2500 peSTCkE ^JféTURN 
3208 RE.1 

3010 m 

305tf ÍF L£N(H$<1 1 2 THEN Em=-24 



para mejorar la estética. Si se va- 
rían las líneas convenientemente 
se obtendrán diversos aspectos y 
se efectuarán procesos didácticos 
interesantes. 

Las derivaciones de estos pro- 
gramas matemáticos pueden lle- 
varnos a la estética, que hemos 
comentado como en el siguiente 
ejemplo: (ver figura 5). 

Este ejemplo de círculos aproxi- 
madamente tangentes para pro- 
ducción de efectos estéticos. Pue- 
de variarse libremente la situación 
modificando la línea 50. El proce- 
so es similar en su generación al 
modelo antecedente. La línea cla- 
ve es la 160 creadora de las cir- 
cunferencias según el número de- 
seado expuesto en la 30. (Ver figu- 
ra 6). 

Esta variante de los modelos 
anteriores sirve para rotular letras 
en circulo. Para otros procedi- 
mientos sería preferible predecir 
un nuevo alfabeto y símbolos o 
emplear el GML (lenguaje gráfico 
de alta resolución). Podía em- 
plearse también en SCREEN 3. 



MODELO 
10 



CIRTAN 
CL3 



20 DEFSNG Á - St DM FJ¿(20O) f Gjí(2O0) 

30 INPUT "TOTAL CIRCUNFERENCIAS 14 f L 
40 INPUT "RADIO CEirTRAL 11 ! R 

5© X - I28t Y - 9© 

60 A - 0t B - 2#3* 14/Ls W - 360/L 

70 SCREEN 2 

80 POR I - 1 TO L 

90 J - X + R COS (A) 

100 K - Y 4 R SIN(A) 

110 PJ¿(I)- Jt G^(I)- K 

120 PSET (j t K) 
130 A - A + B 

140 NEXT 

150 POR I - 1 TO L 

160 CIRCLE (F%(l),Gj¿U))t */(L 2/6) 

170 NEXT 

180 GOTO 180 



Figura 5 



3868 IF lEN(Í1$(2: ! : ÍH€H E5=-24 


50é0 LINE<Xi V)-(F';( I }, 6';( l )) 




3870 IF LEH<«$<3)»2 THEN E^12*SF*20 
3980 l z LEH< NIW * >2 HEN E?=- J4 


5O90 IF 1=6 7rtEr< PRESE! 5 *. 126? 4 


8)íPRIHT«, 






3090 IF lEN;M$(5>>>2 THEN EE=-24 


RN NEXT 




3:00 RETURH 


5110 RE7URN 




4009 PRES£T<lft» t88)íPRIHTf i, "PflRfi EESÜIS 


6898 FCR 1=1 TO 8 




^ESC- l, ¡SP=SP*2 




6018 REAO mil) 




¿OlO S$sINK3rt 6820 NEXT 


4O20 IF ft*=0«Í(27)THBi PETüRN 6050 RETURH 


4030 SOTO 4010 


:m SQSUB 3880 




5008 CIRCxCX» V) ^Ra CIHCLECX» V)»R-1 






?8l8 PRESET(1?8+Efi»60) 




5O10 FOR 1*1 TO 6 


7028 PRINTtUHtd) 




5020 M+ft*CQS.íñ) 7030 FRESE! (170+EB ,95) 


503O K«V*$€tH<A) 


7848 PRINT#l f M$(2} 




5040 F%I)*JíI^<I)fK 


7058 PR£SET(126+EC>115^EF) 




5O50 A=h^íZ=2+1 


7868 PRIHT#l,«f<3) 





aplicaciones 




ANUNCIESE 
por 

MODULOS 

>. 


MADRID 

(91)7339662 


BARCELONA 
(93)3014700 




PARTIO 
EN NUESTRO 

CONCURSO 

\\A SX Magazine premiará cada mes Jos ^^'Jf 
programas que nos hagan llegar nuestros St 
lectores. 

Para participar en este concurso 
abierto, todo aficionado a los ordenadores 
con este estándar deberá hacer llegar fi 
redacción de la revista el listado, un 
cassette y un texto explicativo. 

Entre todos los programas que 
recibamos cada mes, serán seleccionados 
para su publicación aquellos que reojn 
los siguientes criterios: 

— Originalidad de la aplicación 

— Simplicidad del método de ' 
programación. 

La única condición para participar en 
el concurso será que los programas no 
hayan sido publicados previamente en\ 
ninguna revista. 

E nviar vuestros programas a: MSX Magazirje ' 
C/Bravo Murillo, 377 - 5.° A 28020 MADRID ^ 



UODELO CIRLET 
10 CL3 

20 MP3SG A - 2i DIM i->( 200) ,G>( 200) 
30 IHPUT "TOTAL DB ESPACIOS"» L 
40 INPUT "RADIO CENTRAL" | H 
50 X - 128i Y - 86 
60 A - Ot B - 2Jf3.H/LtW - 360/L 
70 OPEH "GRPi" ASJM 
60 SCBEEN 2 
90 POS I - 1 TO L 
100 J - X - R COS (A) 

110 K - Y - R SIH(A) 

120 F>(I)« Ji G>(I) - K 

130 PRESST (J,K) 

140 PRIKT#1 t CHR|(^33) 

150 A -A+Bt Z - Z4-1 

160 NEXT 

170 GOTO 170 



Figura 6 



En la línea 70 se abre un archivo 
para inscripciones en 140, previa 
indicación del lugar en 1 20, de los 
símbolos deseados. En el modelo 
se emplean los signos por orden 
de caracteres (CHR$). 



Problemas de lógica 

Otra aplicación derivada de la 
materia precedente, mucho más 
amena es la solución de los círcu- 
los lógicos alfanuméricos que casi 
todos hemos intentado resolver al- 
guna vez. Los hay verdaderamen- 
te complicados. Nuestro modelo 
es bastante sencillo, pero se pue- 
de agrandar a voluntad y por ello 
complicarlo convenientemente 
como ya expondremos oportuna- 
mente. 

En primer lugar, y para no con- 
fundir las cadencias, empleamos 
el siguiente alfabeto: 

ABCDEFGHIJKLMNÑOPQ 
RSTUVWXYZ 

en el que se tienen presente las le- 
tras más frecuentes en los tecla- 
dos MSX. 



¿f sp=32 tken eui^excelEnte" 

IF SP.-25 íM 1 £P< 32 T HEH Eví="SüBfiE3 
E.kE" 

98;9 iF 5PH6 HHD ÍP-Ú5 TmEH Ev$-'müTh61 



9915 ¡F 5P>8 AND £P< 15 THEH EU$= ;, BIEh" 
9929 iF SF>4 HtíÜ SP<8 THEH Ei,'$="R£sUlHR" 
J825 IF :P<5 THEH El i $="!;iTEHTELÜ DE Hit 1 . 1 
O* 

9836 PFESET(ie,10):PRIHT#l," 

c "jr<TüHCIÜH" 



9935 PRÍHTül," íímttttt" 
9949 PRIhTíl, :PRINT#1, ¡PRiNTIL 
995ü PRlNTSl," HH CCTENIDO^SP! "PUNTOS" 
ím PKÍNTti»!pRMli, 
9079 PRIHTil > " EüHlUfiCIüN TOTfiL=' 

:PRlHT#í,:PR¡NTil,: PR1HTI1," 
";El'$ 

9199 PRESET < 1 0 , 1 78 ) : PR I HT# 1 , "SEGUIR S/N" 
9110 F$=INKE l . , $ 

9120 IF F*="S" OR F$="s" THEH RON 
9139 IF F$="H" OR Fí=V THEH EHO 
9148 ijOTO 9! 19 



ANTES DE INTRODUCIRLO EN 
EL MSX LEED LAS ACLARACIO- 
NES POSTERIORES AL LISTADO, 
YA QUE LA IMPRESORA EN LA 
QUE LO HEMOS LISTADO DES- 
PUES DE COMPROBAR SU CO- 
RRECTO FUNCIONAMIENTO, NO 
TIENE LOS SIGNOS IGUALES A 
LOS DE MSX. 

Conviene recordar brevemente 
que las cadenas van encerradas 
entre comillas. Así: 

"Gracias" "Diez" "De Pedro" 
"Izquierdo" "Centeno" 
son eslabones de una cadena su- 
ma de todos ellos, en este caso de 
letras, pero también podían ser 
números y números/letras. 

Cada DATA contiene entre co- 
mas (,) cadenas, datos numéricos 
o datos alfanuméricos pero sin va- 




lor matemático real. 

En las líneas 985, 986, 8800, 
8810, 8910, 8920 sustituir los sig- 
nos + por un ■ o algo similar. 

En 9030 antes de PUNTUA- 
CION situar 1 2 espacios en blanco 
y en la 9070 antes de EVALUA- 
CION ocho espacios. 

Pueden variarse las líneas de 
espacios con: 

Space$(12) SPG(12) 
STRING(12, "i") siendo 4 
espacio en blanco. 

La 9035 en lugar de flechas con 
dirección vertical alta emplear: 

GRPH + U 

Este modelo consiste en la 
prueba de un test sencillo para 
responder a la casilla número seis 



de 1 6 pruebas o elementos del to- 
tal. 

Hay que contestar con el núme- 
ro de caracteres justo y en el caso 
de decimales basta con dos. Se 
cierran paréntesis y se indican si 
los hay, es decir, todo tipo de sig- 
nos, letras y números que se pre- 
cisen para responder adecuada- 
mente. 

También existe un control de 
tiempo parcial y total y una evalua- 
ción final que no pretende ser 
exaustiva. Ni se crea superior el 
que más nota saque ni inferior el 
que menos. Es un juego pero sin 
extraterrestres. 

Por la sencillez del modelo no 
necesita mayor comentario. 

José Leal Rodríguez. 




Ecología de campo 



La palabra «ECOLOGIA» esta, 
hoy en día. en boca de todo el 
mundo gracias al ínteres concedi- 
do por los medios de comunica- 
ción a los asuntos relativos al me- 
dio ambiente. 

La ecología estudia las relacio- 
nes de los organismos con sus 
ambientes naturales. Esto no se 
consigue fácilmente, todo lo con- 
trario, es un trabajo arduo 'de in- 
vestigación de equipso de científi- 
cos y cada equipo dividido en su 
especialidad, como la ecología 
microbiana, vegetal, marina, de 
micromamíferos, etc. Una de las 
tareas más importantes en estas 
investigaciones es la recolección 
de muestras y datos que posterior- 
mente son analizados muchas ve- 
ces con ayuda de un ordenador 
debido a la gran cantidad de datos 
que se obtienen. También noso- 
tros, con nuestro MSX, podemos 
obtener resultados interesantes. 
Analizando los datos nos apare- 



cerán varias incógnitas o pregun- 
tas, como por ejemplo: ¿Por qué 
en dos sitios aparentemente simi- 
lares la vegetación es distinta? y 
muchas más y son estas pregun- 
tas que distinguen un científico de 
otra persona y la diferencia entre 
un investigador bueno o malo es 
que el primero suele encontrar la 
respuesta. La ecología de campo 
es una de las pocas ramas donde 
un principiante puede llegar a 
conclusiones interesantes mante- 
niendo un mínimo de rigor científi- 
co y descubrir algo nuevo, lo úni- 
co que se necesita es paciencia y 
constancia, lo demás lo consegui- 
remos con la práctica y experien- 
cia. 

Ahora comentaré las distintas 
partes del programa y su utilidad. 

Inventario y censo. Tal como in- 
dica consiste en hacer un inventa- 
rio del número de organismos que 
nos encontramos en una zona de- 
limitada y prefijada. Conviene, so- 



bre todo al principio, estudiar zo- 
nas pequeñas y paulatinamente 
podemos aumentar la zona. Cada 
inventario se referirá a los anima- 
les de un mismo filum o tipo y con 
llegar a averiguar el orden o la fa- 
milia tendremos suficiente (en un 
principio). Una vez familiarizados 
con las claves de identificación 
podemos llegar a género o espe- 
cie. Es necesario hacer llegar a re- 
sultados interesantes. Es impor- 
tante apuntar la mayor cantidad 
de datos posibles de la zona a es- 
tudiar. Cuanto más datos mejor, 
aunque os veáis en la obligación 
de ampliar el programa. 

Respecto a la sociabilidad he 
distinguido cuatro grados pero 
siempre podéis cambiarlo si lo 
veis necesario. 

1. Especies aisladas. 

2. Especies en grupos peque- 
ños. 

3. Especies en grupos gran- 
des. 

4. Poblaciones. 

Afinidad. Consiste en averiguar 
la relación que puede haber entre 
dos inventarios o entre dos espe- 
cies. La afinidad entre inventarios 



ui'j .i'im i ^ j -i-yin-. 



46 MSX 



PREMIO DE 7000 PTS 



viene expresada por el coeficiente 
de Jaccard cuya fórmula es la si- 
guiente: 

C 

A+B-C 

La afinidad entre especies viene 
expresada por X 2 y no tengo más 
remedio que aconsejaros algún 
libro de bioestadística si necesi- 
táis una explicación. 

Estimación población total. Para 
hallar la población total he utiliza- 



do el índice de Lincoln por ser en- 
tre el más sencillo. 

Indice de Lincoln = X1 * x ^ 

Y 

Notas acerca del programa. Las 
distintas partes del programa es- 
tán bien delimitadas y sin ninguna 
dificultad pueden ser alteradas se- 
gún las necesidades de cada uno. 
La opción «Histograma» sólo tiene 
salida por impresora ya que sólo 
lo utilizo como documentación. La 
opción «Estimación población to- 



tal» sólo tiene salida por pantalla 
ya que este resultado suele utili- 
zarse sólo para incluirlo en algún 
texto o articulo y para inventarios 
de población total. Todas las de- 
más opciones tienen salida tanto 
por pantalla como impresora. Las 
opciones de grabar y cargar no 
soy muy necesarias pero las he 
añadido para aquellos usuarios 
que no tienen impresora y quieren 
mantener los datos almacenados. 

Juan Manuel Rial 



10 SCREEN 0:KEYOFF:X=0:COLOR 3,1 
2iZi CLS rPRINTSPC (6) "ECOLOGIA DE C 

AMPO" :PRINT 
30 PRINTSPC(S) "1-Inventario." 
4iZi PRINTSPC(8) "2-A-f inidad ." 
50 PRINTSPC (8) "3-Hi.stograma . " 
60 PRINTSPC<8) "4-Est imación pobl 

ac i ón " 
70 PRINTSPC (10) "total ." 
80 PRINTSPC (8) "5-Grabar . " 
90 PRINTSPC (8) "6-Cargar . " 
100 PRINTSPC ( 8 )"7- Introducción d 

atos" 

110 Z*=INPUT* ( 1 ) :0N VAL(Z*)GOSUB 
240 , 360 , 870 , 780 , 1 1 00 , 1 200 , 1 
30 

120 GOTO 20 

130 '«« INTRODUCCION DE DATOS »» 
140 CLS : CLEAR 5000 : INPUT "Nfl de e 

species a tratar (max 50) " ;N 

:IF N>50 THEN 140 
150 DIM A*<N> ,IX <N> ,P% (N) 
160 CLS : INPUT"Nfl de inventario"; 

V"¿ : INPUT"Hora (HH :MM) " ;R* 
170 INPUT" Fecha (DD/MM/AA) " ;F* :IN 

PUT"Tipo de habitat" ;H*: 
180 INPUT"Local idad" ;L* : INPUT"A1 

titud (m> " ;EV. 
190 INPUT"Sup .considerada <m 2 ) " ;S 

"/. : INPUT "Temperatura (Cent . ) " 

;T'Á 

200 CLSrFOR M=l TO N :PRINT" ";M; 

" " ; :INPUT"Especie" ;A*(M> 
210 INPUT"Nü de individuos" yll <M 

) : INPUT"Sociabi 1 idad ( 1-4) " ; 



p-/. (M) íX=X+I%(M) :CLS:NEXT M 
220 GOTO 20 

230 ' <(« INVENTARIO »» 

240 CLS : Y=0 : GOSUB 1 350 : I NPUT "Pan 

tallad) , impresora (2) o men 

li (3) " ; Y 
250 ON Y GOSUB270 ,990 ,20 
260 GOTO 240 
270 CLS :TIT*="Especie 

abun soc ía . " :PRINTT 

IT* 

280 FOR M=l TO N:IF LEN ( A* ( M ) ) >2 
0 THEN PRINT TAB (0) LEFT* ( A* 
<M) ,20) ;ELSE PRINT TAB(0)A$ 

(M) ; 

290 AB ! = ( 100* 12 (M) /X) : PRINT TAB ( 
20 ) AB 1 ; " 7. " ; TAB ( 32 ) F7. ( M ) 

300 IF N=21 AND M=21 OR N=42 AND 
M=42 THEN 320 

310 IF VPEEK (882) <>32 THEN 340 E 
LSE NEXT 

320 Z*=INPUT* (1) :IF Z*<>" "THEN 
320 

330 RETURN 

340 Z*=INKEY$ :IF Z$<>" "THEN 340 
350 CL3:PRINTTIT$:NEXT 

360 '«« AFINIDAD )))> 
370 CLS: LOCATE 4 ,4 : PRINT" AFINIDA 
D" 

380 LOCATE 4 ,6 :PRINT" 1-Entre inv 

entar ios" 
390 LOCATE 4 ,8 :PRINT"2-Entre esp 

ec ies" 

400 LOCATE 4 , 10 :PRINT"3-Menu" 



MSX 47 



410 

420 
430 
440 



450 

460 

470 

480 
490 

500 

510 

520 

530 

540 

550 
560 

570 
580 

590 

600 

610 
620 

630 



640 



650 



Z*=INPUT$<1) 
430,490,20 
GOTO 370 

CLS :A=0 :B=0 :C=0 : J=0 
INPUT"Nfl de especies en inve 

ntario a" ;A : INPUT"Nfl de esp 

ecies en inventario b";B:IN 

PUT"Nfl de especies comunes 

a los dos" ;C 
J=C/ (A+B-C) :PRINT :PRINT"Coef 

. de Jaccard=" ; J 
LOCATE 0 ,20 :PRINT"Menu=espac 

io , Impresora=tec la" 
Z*=INPUT*<1> :IF Z$<>" "THEN 

GOSLIB620 
RETURN 

CLS :A=0 :B=0 :C=0 :D=0 :NM=0 
INPUT" Nombre especie a";El$: 
INPUT"Nombre especie b";E2* 
INPUT"Nflde inventarios con e 

spec ie a y b " ; A 
INPUT"Nflde inventarios con b 

y sin a" ;B 
INPUT"NQde inventarios con a 

y sin b " ;C 
INPUT"Nfide inventarios 

ni b";D 

Jí = (NM+ (B*C-A*D) -2) t ( (A+B) * ( 

C+D) * ( A+C) * (B+D) ) 
PRINT :PRINT"JI S =" ;JI 
LOCATE 0 , 20 : PR I NT " Menu=espac 

i o , Impresora=tec la" 
Z*=INPUT*<1> :IF ZÍO" "THEN 

GOSLIB660 
RETURN 

'«« IMPRESORA »» 
CLS : GOSUB 750 : PR I NT " I MPR I M I E 
NDO" 

LPRINT"Nfl de especies en inv 
entario a=" ; A :LPRINT"Nfl de 
especies en inventario b = " ; 
B :LPRINT"NQ de especies com 
unes a los dos=" ;C 

LPR I NT : LPR I NTSPC ( 8 ) " Coe-f i c i e 
nte de Jaccard=" ;.J :LPRINT :L 
PRINT 

RETURN 



ON VAL (Zí ) GOSUB 670 LPRINT"Tab la de contingencia 



680 LPR I NT : LPR I NT : LPR I NTSPC ( 26 ) " 

Especie a" : LPR I NTSPC (23) "Pr 

esente Ausente" : 
690 LPRINT"Especie b Presente" 

;TAB<25) A ;TAB (35) B ;TAB (42) 

A+B 

700 LPRINTSPC (12) "Ausente" ;TAB(2 
5) C ;TAB (35) D ;TAB (42) C+D 

7 1 0 LPR I NTTAB ( 25 ) A+C ; T AB ( 35 ) B+D ; 
TAB (42) NM : LPR INT 

720 LPRINT"Especie a :";El$,"Esp 
ec ie b : " ;E2* 

730 LPR I NT : LPR I NT " J I - 1 = " ; J I 

740 RETURN 

750 CLS : PR I NT " T I ENE CONECTADA LA 

IMPRESORA (S/N) " : 
760 Z*=INPUT*U) sIF Z*="N" OR Z* 

="n" THEN 20 ELSE RETURN 
770 ' «« ESTIMACION ))» 
780 CLS:X1=0:X2=0:Y=0 
790 PRINT "Estimación población t 

otal . " :PRINT 
800 INPUT"Nü de animales captura 

dos , marca- dos y libera 

dos en el primer mués- tr 

E?0 ""XI 



sin a 



660 CLS:GOSUB 750 :PRINT" INPRIMIE 
NDO" 



310 



820 



830 

840 

850 
860 
870 

880 



890 



900 



del s 
habia 
pr 



"THEN 



INPUT "Nfl de capturados en el 

segundo muestreo ";X2 
INPUT"NQ de individuos 

egundo muestreoque ya 

n sido marcados en el 

imer muestreo"; Y 
PRINT:PRINT"Indice de Lincol 

n=";:PRINT (X1*X2)/Y 
Z*=INPUT* (1) :IF 

GOSUB 840 
RETURN 

'«« H I STOGRAMA )>)> 
CLS:GOSUB 1350:GOSUB 

NT" INPRIMIENDO" 
LPRINTCHR*(14) "Histograma ce 

nso inventario nfl" ; :LPRIN 

T :LFRINTCHR$ (15) 
LPR I NT" Especie 

Nfl indivi 

dúos" 

LPRINTTAB (40) "0" ;TAB (50) INT ( 
X/4) ;TAB(60) INT(X/2) : LPR INT 
TAB(50)"|"; TAB(60)"|" 



>0:PRI 



LOS JUEGOS ELECTRONICOS 



48 MSX 



910 LPRINTTAB<40) "• 



920 FOR M=l TO N : LPRINT A* (M) ; :Q= 

(40-LEN (A$ (M) ) ) :FOR D=l Tü 

QrLPRINT" ." ; :NEXT D 
930 IF 17. (M) <X/40 THEN 960 
940 0= (40*1% (li) ) /X :FDR D=l TO O: 

LPRINT"!" ; :NEXT D :LPRINT VA 

<M) :NEXT li 
950 RETURN 

960 IF 17 (M) < (X/40) /3 THEN LPRIN 
T'i"5lZ(M) ELSE IF 17 < (X/40 
)/2 THEN LPRINT"! " ; IT. (M> EL 
SE LPRINT "|";I7(M) 

970 NEXT M 

980 RETURN 

990 ' ff INVENTARIO IMPRESORA »» 
1000 CLS:GOSUB 750 :PRI NT" IMPRIMI 
ENDO" 

1010 LPRINTCHR*< 14) "Inventario n 
Q " ;V7. :LPRINTCHR*<15> 

1 020 LPR í NT " FECHA : " ; F* ; TAB (20) "H 
ORA : " ;R$ ;TAB (40) "TIPO DE HA 
BITAT:";H$ 

1030 LPRINT "LOCALIDAD:" ;L*;TAB<4 
0 ) " SUPERF I C I E CONS I DERADA : " 
;S7 ; " m 2 " 

1 040 LPR I NT " TEMPERATURA : " ; TV. ; " = 
C" ;TAB(40) "ALTITUD:" ;E7 ;"m" 

1 050 LPR I NT : LPR I NT " Espec i e " TAB < 2 
2) "Abundancia (7.) "TAB (40) "So 
ciabi 1 idad" :FÜR M=l TO 52:L 
PRINT"-" ; :NEXT M : LPRINT 

1060 FOR M=l TO NjjlF LEN(A*(M>) ; 
22 THEN LPRINT LEFT* < A* (M) , 
22) ;ELSE LPRINT A*(M> ; 

1070 AB ' = ( 100* 1 % (M) /X ) : LPRINT TA 
B (24) AB 1 i :LPRINTTAB(44)PV. (M 
) :NEXT M 

1080 RETURN 

1090 ' «« LECTO-GRABADORA »» 
1100 CLS:PRINT"PULSE SAVE+LOAD D 
ESPUES ESPACIO" :Z*=INPUT* ( 1 
) :II- Z*<>" "THEN 1100 
1110 OPEN"CAS:TULí"FOR OUTPUT AS 
#1 

1120 PRINT#1 ,WÁ :PRINT#1 ,R*:PRINT 
#1 ,F* 

1130 PRINT#1 ,H*:PRINT#1 ,E%:PRINT 



# 1 , S7. 

1 140 PRINTttl ,1'JL :PRINT#1 ,N :PRII 

1 ,X:PRINT#1 ,L* 
1150 CL0SE#1 

1160 OPEN"CAS :TUL*" FOR OUTPUT A 
S#l 

1170 FOR M=l TO N:PRINT#1 ,A$(M) : 
PRINT#1 ,17 (M) :PRINT#1 ,P% (M) 
:NEXT M 

1180 CLOSE #1 

1190 RETURN 

1200 CLS:PRINT"SI CARGA DATOS DE 

SDE LA LECT0-6RABA- DORA PE 

RDERA TODOS LOS DATOS QUE H 

A Y A I NTRODUC I DO " 
1210 PRINT "QUIERE VOLVER AL MENU 

(S/N) " :Z*=INPUT*(1) :IF Z*=" 

S"ORZí="s" THEN 20 
1220 PRINT "PULSE LOAD , DESPUES 

ESPACIO" :Z*=INPUT*(1) :IF Z* 

O" "THEN 1220 
1230 CLEAR 5000 

1240 OPEN "CAS : TUL* "FOR INPUT AS 
#1 

1 250 I NPUT# 1 , V7. : I NPUT# 1 , R* : I NPUT 
#1 ,F* 

1260 INPUT#1 ,H*:INPLIT#1 ,E7 : INPUT 
#1 ,S7 

1270 INPUT#1 ,T7 : INPUT#1 ,N : INPUT# 

1 ,X : INPUT#1 ,LÍ 
1280 CL0SE#1 

1290 DIM A*(N+1) ,17. (N+l) ,P7(N+1) 
1300 OPEN "CAS:TULÍ" FOR INPUT A 
S#l 

1310 FOR M=l TO N: INPUT#1 ,A* (M) : 
INPUT#1 ,17 (M) :INPUT#1 ,P7 (M) 
:NEXT M 



1320 
1330 
1340 
1350 



CL0SE#1 
GOTO 20 

' ««RUT, 
CLS :FOR 



COMPROBACION »» 
M=l TO N : IF A* (M) > 
"" OR I7(M)<>0 OR P7(M)<>0 
THEN NEXT M : RETURN 
1360 PRINT "ERROR EN LOS DATOS. VU 
ELVE A INTRODLI- C IRLOS. NO D 
EJE ESPECIES SIN NOMBRE N 
I INTRODUZCA NUMEROS = 0" 
1370 PRINT: PRINT "PULSA ESPACIO" 
1380 Z*«INPUT*U) sIF Z*<>" "THEN 

1380 • 
1390 RUN 




El programa crea un reloj digital 
que funciona mediante interrup- 
ciones, lo que hace que una vez 
activado se pueda seguir traba- 
jando con el ordenador con plena 
libertad, sin que ello afecte al reloj. 

El programa BASIC carga el có- 
digo máquina, introduce los datos 
de horas, minutos y segundos y 



activa el parche de interrupciones 
(vector H-KEYI) que es llamado 
cincuenta veces por segundo por 
el sistema operativo. 

La rutina activada utiliza un 
«buffer» creado entre &hdfe1 y 
&hdfea para actualizar los dígitos 
del reloj, y en la posición &hdfeb 
se mide cuándo ha transcurrido 
un segundo. 



El resto del programa se encar- 
ga de actualizar los valores del 
«buffer», mirar si se está en modo 
1 de texto y si es así visualizar en 
pantalla los valores del «buffer», 
que corresponde a los dígitos del 
reloj. Estos se visualizan en la par- 
te de la pantalla que corresponde 
a la visualización de las teclas de 
función [F-5]-[F-10] a fin de no in- 
terferir en el resto de la pantalla. 

El programa está pensado para 
funcionar con unidad de disco: a 
tal fin se quitará la sentencia CLS 
de la línea 30, se activará el NEW 
de la línea 140 y se grabará en el 
disco con el nombre «AUTOEXEC- 
BAS». Así, cuando conectemos el 
ordenador con el disco introduci- 
do se conseguirá una autoejecu- 
ción con un maravilloso efecto. 

Si no se utiliza la unidad de dis- 
co se puede utilizar el bloque de 
memoria entre &he061 y &hf37f 
para otras rutinas en código má- 
quina. 

La precisión del reloj está supe- 
ditada a la del generador de inte- 
rrupciones del UDP, pero como no 
es normal que nuestro ordenador 
esté encendido durante un tiempo 
relativamente largo, nos será sufi- 
ciente. Hay que tener en cuenta 
que mientras se utiliza el cassette 
para grabar o cargar programas 
nuestro rejoj permanecerá para- 
do. 

Juan Carlos Pérez Baza 
León 



1 
2 
3 
9 



Relo/i diqital permanente MSX . 
Juan-Carlos Pérez Baza. 1986, 

Inicial ización y carga 

de código máquina 



10 CLEAR200 f &HDFE8 

2« FORI=!cHDFElTDÍfHE060 :READA$ :A=VAL ( ■ 
&H"+A$) :P0KEI ,A:NEXT 

29 ' Puesta en hora 

30 CLS:LOCATE0,5:PRINT" (HH :MM :SS) ?" 



PREMIO DE FOOO PTS 



40 



L0CATE1 ,5:B$=INPUT$(1) :PRINTB$:IFB 
$ < " 0 " 0RB$ > " 2 "THEN40ELSEPOKE$<HBFE 

2, ASC(B$) 

50 L0CATE2,5:A$=INPUT$(1) :PRINTA$:IFB 
$<"2"AND(A$<"«"0RA$>"9")DRB$="2" 
ANDA$ > " 3 " THEN50ELSEPOKEí<HDFE3 , AS 
C(A* ) 

68 L0CATE4,5:A*=INPUT*(1) :PRINTA*:IFA 
$<"0"ORA$>"5"THEN60ELSEPOKES<HDFE 

5, ASC(A$) 

78- L0CATE5,5:A$=INPUT*(1) :PRINTAt : IFA 
$<"0"ORA*>"9"THEN70ELSEPOKES<HDFE 

6, ASC(A$) 

B0 L0CATE7,5:A$=INPUT$<1) :PRINTAí:IFA 
$<"0"ORA$>"5"THEN80ELSEPOKE!<HBFE 

8, ASC(A$> 

90 L0CATEB,5lA*«INPUT*(l) :PRINTA$:IFA 
*<"0"ORA$>"9"THEN90ELSEPOKE5«HDFE 

9, ASC(A*) 

100 LOCATE10,5:PRINT" ¿Correcto?" 
110 A$=INPUT$<1) :IFA$="N"ORA$="n"THEN 
30 

120 I F At O " S " ANDA! O " s " THEN 1 1 0 
130 LGCATE0,5:PRINTSPC(21) 

139 ' Llamada al vector H-KEYI 

140 F0RJ=!<HFD9CT0S ! HFD9ASTEP-1 :READB :P 

QKEJ ,B :NEXT : 'NEW 

149 ' Datos 

150 DATA 20, 30, 30,3a, 30, 30, 3a, 30, 30, 2 

0,00,F3,DD,21 ,ED ,DF ,DD ,34 ,FE ,DD , 
7E ,FE ,FE ,33 ,C0 ,97 ,DD ,77 ,FE , 1E ,30 
,DD 

160 DATA 34,FC,DD,7E,FC,FE,3A,20,44,D 
D,73,FC,DD,34,FB,DD,7E,FB,FE,36, 
20,37,DD,73,FB,DD,34,F9,DD,7E,F9 
,FE 

170 DATA 3A,20,2A,DD,73,F9,DD,34,F8,D 
D,7E,F8,FE,36,20,1D,DD,73,F8,DD, 
34,F6,DD,7E,F6,FE,3A,20,10,DD,73 
,F6 

180 DATA DD,34,F5,DD,7E,F5,FE,36,20,0 

3, DD,73,F5,3A,AF,FC,FE,00,C0,21 , 
El ,DF,11 ,B6,03,01 ,0A,00,CD,5C,00 
,C9 

190 DA T A 223,236,205 



DINA MIC 

BUSCA PROGRAMAS 
Y PROGRAMADORES 

• PROGRAMAS PARA CBM 64, SPECTRUM, AMSTRAD Y MSX. 

• PROGRAMADORES CON DOMINIO DE 6502 O Z80. 



1987 será un año que 
dará mucho que hablar. 
Los programas y los 
programadores 
españoles van a estar 
de moda. 
Es lógico, porque 
la calidad siempre 
tiene recompensa. 

SI quieres que 

programar vídeo-juegos 
sea tu profesión: 
Llámanos, demuestra tu 
calidad, puedes 

integrarte en 
una empresa 
joven 
y con 
futuro. 




programa 
comercializado bajo el 
anagrama DINAMIC y 
rentabilizar los meses de 
trabajo que llevas con él, 
no lo dudes, llámanos 
y veremos tu trabajo. 



SI tienes un proyecto 
claro, interesante, que 
consideras innovador 
en este mundo del 
software y puedes 
demostrar tu 
capacidad técnica 
para llevarlo a cabo. 
Te estamos esperando 

OFRECEMOS: 



Un trabajo con futuro, 
una profesión bien 
remunerada o un 

sistema para 
rentabi- 
lizar tu 
afición 
preferida, 
lo que tú 
elijas. 

Nuestra 
infraes- 
tructura 
técnica como 
apoyo para 
nuevos 
programas y 
nuevos programadores- 





• incorporación a un 
equipo de 
profesionales 

• aseso- 
ramien- 
to en 
rutinas 

• aporte 
de los 
mejores 



gráficos del mercado 

• financiación de 
equipo informático 

• ayuda de especialistas 
en música y sonido 

• realización de versiones 
a otros ordenadores. 

Sistemas de remuneración 
alternativos: 

• Pagos al contado. 

• Contrato de royalties. 

Una comercialización con 
las mejores compañías 
en todo el mundo: 
ESPAÑA, GRAN BRETAÑA, 
AUSTRALIA, 
AUSTRIA, 
BELGICA 
DINA 
MARCA, 
I FINLANDIA 
) FRANCIA, 
ALEMANIA, 
r ISLANDIA, 
ITALIA, 
MALTA, NORUEGA, 
SUECIA, SUIZA, 
JAPON, ESTADOS 
UNIDOS. 

Si consideras interesante 
nuestra oferta de trabajo, 
si piensas que puedes 
realizar vídeo-juegos de 
calidad, si has acabado 
un programa, anímate, 
danos un telefonazo y 
charlaremos del asunto. 

TEL. 2487887 



DINAMIC 



Plaza de España, 18 Torre de Madrti. 29 I 
28008 MADRID T^lcx. 47008 TRNX F 




El cassette 
y salida directa 

al altavoz 



LTjUl intercambio de informa- 
función entre nuestro ordena- 

Jdor y el cassette se pn h lu 

ce a través del PPI o Interface Pro- 
gramare de Periféricos. 

Como podemos ver en la figura 
1 del número de diciembre, el PPI 
está compuesto de cuatro ports 
de los que dos son de entrada y 
dos son de salida. 

Los ports 96 hex, 98 hcx y 99 
hex del PPI ya los hemos usado en 
el capitulo anterior para hacer una 
lectura directa del teclado y de los 
disparadores de los joysticks. 

Los ports 96 hex y 97 hex los 
podemos usar también para pro 
dü< if sonidos sin la intervención 
del PSG, ya que comunican direc- 
tamente con el altavoz. Utilizando 
el port 96 hex lograríamos o! som 

do mediante eJ envío alterno a <h 

( hopoA/ilolosnumoros l^HyO, o 



sea, alzando y bajando el bit 7 de 
dicho port; prueba lo siguiente: 

10 OUT&H96J28 

20 OUT&96,0 

30 GOT0 10 

Si utilizamos el port 97 hex los 
números a alternar serían el 14 y el 
15. 

10 <>ut&97,14 

20 out&97,15 

30 gotpiÓ 
poro si utilizas oslo port cuidado 
( :< >ri alzar < >l I ni 7 d< 'I misrn< >, ya i |u< ■ 
el crack del ordenador sería inme- 
diato; prueba lo siguiente para « lo 
jar «colgado» el ordenador. 
OUT &h97.128 

I I mano|o del oassetto «i travos 
del PPI se consigue de la siguiente 
manou: 

A través del port 96 he» po 
demos encender y apagar ol ino 
l<Ȓ (J(?| oassollo. ol motor so parara 




52 MSX 



18/328 








cuando alcemos el bit 4 (Recuer- 
da que los bits del octeto se em- 
piezan a contar desde cero). Para 
comprobarlo prueba alternativa- 
mente. 

OUT&H96.16 
OUT&H96,0 

- Con el port 97 hex también 
podemos manejar el motor, ahora 
el motor se parará cuando envie- 
mos un 9 al port y arrancará en- 
viando un 8. Además este port nos 
permite grabar impulsos directa- 
mente en la cinta previa pulsación 
de las teclas RECORD y PLA Y del 
cassette y enviando alternativa- 
mente los números 1 1 y 10 en es- 
pacios de tiempo precisos. 

- La señal proveniente del cas- 
sette podemos leerla en el port 98 
hex. El bit 6 alzado nos indica que 
el motor del cassette está parado, 
y un 0 en el mismo nos marca que 
el motor funciona. En el bit 7 tene- 
mos presentes los impulsos pro- 
venientes de la cabeza lectora de 
forma que un 0 en este bit indica la 
ausencia de señal. Realizaremos 
a continuación dos programas 
que aplicarán algunas de las ca- 
racterísticas aprendidas. El prime- 
ro lee el port 98 hex, que recoge la 
señal del cassette, e imprime su 
contenido en binario en la pantalla 
a la vez que lo envia directamente 
al altavoz. , 

10 A=INP(&H98): 

A$=STRING$(8-LEN 
(BIN$(A)), u 0")+BIN$(A) 

20 OUT&H96.A AND &HEF 



MSX 53 



SVI 318/328 



30 PRINT A$:GOTO 10 

Ejecuta este programa en tu or- 
denador y a continuación haz que 
el cassette lea alguna cinta, bien 
con software o con música. Se 
puede comprobar que el parecido 
entre lo que se oye por el altavoz y 
lo que se supone debe haber en la 
cinta es muy relativo o nulo. Esto 
se debe naturalmente a la lentitud 
del basic para ejecutar instruccio- 
nes respecto a la velocidad de lec- 
tura de datos en el cassette y emi- 
sión por el altavoz. 

Probaremos ahora el siguiente 
pulgoprograma en lenguaje de 
máquina. 

PRINCI IN A.98 ; Información 

del port 98 
hex 

AND EF ¡ Para no parar 
el motor del 
cassette 
OUT 96.A ; Dato al altavoz 
CALL 3512 ; Prueba si 

CTRL-STOP 
JRNC PRINCI; SI=>VUELVE 
RET ; NO=>SALE 

AL BASIC 
Cargándolo mediante el si- 
guiente programa basic. 

10 CLEAR 100.&HD54E 
20 FOR A=&HD54E TO 

&HD559 
30 READ A$:POKEA, 

VAL( tt &H M +A$:NEXT 
40 REFUSR=&HD54E 
50 Z=USR(0) 

60 DATA DB,98,E6,EF,D3,96, 
CD,12,35,30,F5,C9 

Ahora no aparece información 
en la pantalla pero si ponemos 
una cinta de música en el cassette 
lo .podremos oír en el altavoz de 
nuestro televisor o amplificador 
conectado. 

Hemos logrado hacer pasar el 
sonido a través de nuestro orde- 
nador, lo que demuestra que pue- 
de ser digitalizado con bastante 



calidad a pesar de haber contado 
con sólo dos niveles de volumen 
(los estados 1 y 0 del bit del port de 
acceso), se podrán obtener mejo- 
res efectos usando los 15 niveles 
de volumen del generador de so- 
nido. Aquí empieza el trabajo de 
los sintetistas de voces y otros rui- 
dos raros. 

La impresora 

Los ports 10, 1 1 y 12 hex nos 
comunican con el interface de da- 
tos en paralelo, que nos sirve de 
intermediario para manejar la im- 
presora de un modo directo me- 
diante las instrucciones «IN» y 
«OUT» tanto desde el basic, como 
desde el código máquina. 

Como se indica en la tabla del 
número de diciembre, los ports 1 0 
hex y 1 1 hex son de salida, para 
enviar mensajes a la impresora, 
mientras que el port 12 hex es de 
entrada y nos proporciona una se- 
ñal proveniente de la misma que 
nos indica si está o no preparada 
para recibir datos. 

Cuando la impresora está fuera 
de línea, o sea, no preparada, se 
pone a 1 el bit 0 de este último 
port, y viceversa, cuando en el bit 
0 hay un 0, sabemos que la impre- 
sora está dispuesta a aceptar 
nuestros datos y caracteres de 
control. 

Para enviar la información a la 
impresora hemos de seguir el 
«protocolo» propio del interface 
paralelo y que explicamos a conti- 
nuación. 

En el port 10 hex colocamos 
(OUT) la información a enviar, ya 
sean datos o caracteres de control 
para la impresora (caracteres 
cuyos códigos ASCII abarcan de 
0 a 31). 

A continuación ponemos a 0 el 
bit 0 del port 1 1 hex, este bit se lla- 
ma dci sincronismo (DATA STRO- 



BE), e inmediatamente lo volve- 
mos a poner a 1 , con lo que la im- 
presora acepta el dato colocado 
en el port de datos 1 0 hex. Este 
dato no se imprime inmediata- 
mente, salvo en el caso de que la 
impresora no tenga memoria in- 
termedia, sino que se almacena 
en ésta y sale al papel, bien cuan- 
do dicha memoria se llena, o 
cuando se recibe el carácter de 
control «13» (código de ENTER) o, 
en algunas impresoras, cuando al 
desconectarlas queda algún dato 
en dicha memoria o «BUFFER». 

El siguiente ejemplo efectúa el 
envío del carácter pulsado a la im- 




presora, a la vez que lo imprime en 
la pantalla. 

10 A$=INKEY$:IF A$=" " 

THEN 10 
20 PRINT A$;OUT&H10,ASC 

(A$):OUT&H11,0:OUT&11,1 
30 GOT0 10 

Rutinas de la ROM 
y variables del sistema 

Aunque aún nos falta por des- 



54 MSX 




cubrir cómo funcionan en modo 
directo algunos periféricos tales 
como el disco, el modem o la tarje- 
ta de 80 columnas, vamos a em- 
pezar a ver algunas rutinas de la 
memoria ROM y variables del sis- 
tema que nos ayudarán a conocer 
mejor nuestro ordenador. 

Para ello nos ayudaremos de 
las tablas que insertamos en el nú- 
mero de diciembre, que muestran 
una lista de rutinas y variables con 
la dirección en que se encuentran 
en la memoria del ordenador. 

— Los saltos de enganche: 

Empezaremos por fijarnos que 




las variables del sistema a partir 
de la dirección FE79 hex tienen 
delante la letra «H» y un punto. Es- 
to indica que cada una de ellas es 
un «HOOK JUMP» o salto de en- 
ganche, a los que ya hicimos alu- 
sión en el primer artículo cuando 
presentamos un programa que 
nos conmutaba con el otro banco 
de memoria disponible en los SVI- 
328. 

Una variable de estas carac- 
terísticas consiste en tres octetos 



de memoria, el primero de los 
cuales suele contener normal- 
mente el código «C9» que perte- 
nece a la instrucción en lenguaje 
ensamblador «RET» equivalente a 
la instrucción basic «RETURN». 

Hay algunas rutinas de la ROM 
que en determinado momento ha- 
cen una llamada «CALL» a estas 
zonas de memoria. Si el código 
encontrado pertenece a la instruc- 
ción «RET» el flujo del programa 
continúa en la instrucción siguien- 
te a «CALL» en la rutina que se es- 
taba efectuando. 

Si se cambia el contenido de la 
variable, de modo que el primer 
octeto de los tres contenga un có- 
digo de salto «JP» y los otros dos 
contengan la dirección a la que 
saltar, por ejemplo la dirección en 
que comienza nuestra rutina en 
código máquina, habremos con- 
seguido desviar el flujo normal del 
programa en esa rutina ROM, y de 
esta forma habremos «engancha- 
do» la rutina ROM con la nuestra 
pudiendo así definir un nuevo co- 
mando, o hacer que el ordenador 
se comporte de forma diferente a 
la habitual. 

Dentro de los saltos hay algu- 
nos que están marcados con las 
letras S.D., lo cual indica que son 
usados por rutinas que pertene- 
cen al sistema de disco. 

Una de estas variables o saltos 
tiene mayor interés que todos los 
demás ya que es muy frecuenta- 
do, se trata del H.GONE que se en- 
cuentra en la dirección FF57 hex. 

Este enganche es consultado 
por todas las declaraciones BA- 
SIC antes de la prueba de sintaxis. 
Esto significa que si hacemos un 
desvío en este punto, podemos 
construir una rutina que utilice 
nuestros propios comandos, pero 
para usarlo hemos de tener en 
cuenta unas cuantas reglas bási- 
cas: 



tii COHfKAOO LA P£QXM 
íHCiCiOPíQlA DEL MSX... fr*A| ,m.. ¿i 




r 



1 




\¿00í m PiíVSfiS 





\ . Cuando se realiza la llama- 
da el registro «A» contiene el códi- 
go de la palabra a usar. Si la pala- 
bra es un comando o función ba- 
sic el registro «A» contiene el códi- 
go de dicho comando o función 
según las tablas de las figuras 2 y 
3 que aparecieron en el número 
13 de la revista. Nuestra primera 
instrucción en la rutina a la que se 
ha desviado el flujo ha de ser una 
comprobación de que el registro A 
contiene el código esperado, y si 
no es habrá un retorno a la rutina 
ROM inicial. 

2. Tras realizar nuestra rutina 
la función para la que fue progra- 
mada, una instrucción RET la en- 
viaría de nuevo a la ROM, cuando 
normalmente querremos retornar 
al basic. Para conseguir esto he- 
mos de retirar la dirección de re- 
torno a la ROM de la pila, mediante 
un incremento doble del puntero 
de la misma, de modo que apunte 
a la dirección de retorno al basic. 

3. En el registro HL se almace- 
na la dirección de la posición, 



MSX 55 




Dirección 


Código 


Comentarios 


DOO 


CP 77 


- "M"?? 


D002 


RET NZ 


- NO— > Retorna 


D003 


INC HL 


- Siguiente carácter 


D004 


— LD A, (HL) — 


- A recoge el código 


D005 


DEC HL 


- Por si hay que volver. 


D006 


-—CP 85 


.. "U"?? 


D008 


RET NZ 




D009 


-- INC HL 




DOOA 


INC HL 




DOOB 


— - --LD A, (HL) — 




DOOC 


-DEC HL 




DOOD 


—DEC HL 




DOOE 


— - CP 83 




D010 


-RET NZ 




D011 


— - -INC HL 




D012 


— INC HL 




D013 


INC HL 


•- Siguiente carácter basic. 


D014 


- INC SP 


- Elimina retorno 


D015 


INC SP 


a la ROM. 


D016 


PUSH HL 


- Salva el puntero BASIC. 


D017 


- -LD HL, CMUS— • 


- HL=lnicio cadena música 


D01A 


— CALL2C24 — • 


- Rutina "PLAY". 


D01D 


POP HL 


- Recupera puntero BASIC 


D01E 


— - RET 


- Final. 


D01F 


-CMUS-34,66,67,68,69,70,70,65,67,0 



dentro del programa basic, que se 
está ejecutando. Antes de retornar 
nuestra rutina debemos incre- 
mentar esta dirección de modo 
que apunte a la siguiente instruc- 
ción basic, y no a la que acaba- 
mos de analizar. 

En el ejemplo siguiente crea- 
mos el comando «MUS» que hará 
que suene una melodía cada vez 
que lo escribamos. 

Primero prueba el programa y 
luego analizamos el ensamblador 
fuente: 

10 CLEAR 100,&hD000 

20 FOR A=&hD000 TO 

&hD028 
30 READ A$:POKE A.VAL f&h" 

+A"):NEXT 
40 POKE&HFF58,0:POKE 

&HFF59,5HFD0:POKE 

&HFF57.&HC3 
60 DATA FE,4D,CO,23,7E,2B, 

FE,55,CO,23,23,7E 
70 DATA 2B,2B,FE,53,CO,23, 

23,23,33,33,E5,21 
80 DATA 1F,DO,CD f 24,2C,E1, 

09,22,42,43,44,45,46 
90 DATA 46,41,43,0 

Un detalle a tener en cuenta en 
la línea 40 es el orden en que se 
han introducido los datos para el 
enganche. Al estar introduciendo 
estos datos directamente desde el 
basic, hemos de tener cuidado v 



A destacar del programa la lla- 
mada a la rutina ROM "PLAY" que 
interpreta la cadena de música a 
cuya dirección apunta el registro 



dejar como último dato a introdu- 
cir el código de salto, pues cual- 
quier otro orden provocaría un sal- 
to prematuro y un fallo en el pro- 
grama cargador. 

Tras teclear «RUN» y pulsar «EN- 
TER» el ordenador devúelve el 
mensaje OK, con lo que tendre- 
mos los mismos comandos y po- 
sibilidades de antes (prueba L/ST), 
pero tenemos un nuevo comando 
llamado «MUS» y ¿para qué sir- 
ve?, pruébalo y verás. 

El ensamblador fuente es co- 
mo sigue: 



HL Dicha cadena ha de empezar 
en comillas y terminar en cero. 

Venerando Solís 



56 MSX 




La 
Guía 
Lotus 
Para 
Utilizar 

l2> 



LA GUIA LOTUS PARA UTILIZAR 1-2-3 

es un libro que le enseñará paso a paso cómo 
utilizar este programa. 




CARACTERISTICAS: 

• Páginas: 300 

• Papel offset: 112 grs. 

• Tamaño: 182 x 232 mm. 

• Encuademación: Rústica-cosido 



LA GUIA LOTUS PARA UTILIZAR 1-2-3 
contiene: 

- Glosario detallado e índice de forma que 
pueda encontrar fácilmente cualquier co- 
sa que necesite. 

- Explicación de la capacidad de macros de 
la versión 2. 

- Una biblioteca básica de macros que ofre- 
ce al nuevo usuario el descubrimiento in- 
mediato y el uso eficiente de los macros, al 
mismo tiempo que aprende a programar. 



El complemento indispensable para el manual 1-2-3 



OFERTA DE LANZAMIENTO 3,950 PTAS. (IVA INCLUIDO) | 

Recorte y envíe HOY MISMO este cupón a: ÍnfQÚIS, S.9. el Bravo Murillo, 377 - 28020 MADRID 

CUPON DE PEDIDO 



TAMBIEN 
LO PUEDE 
ADQUIRIR 
EN SU LIBRERIA 
HABITUAL 



SI. Envíenme el libro «LA GUIA LOTUS PARA UTILIZAR 1-2-3» al precio 
de 3.950 PTAS. 

EL IMPORTE lo abonaré: 

Con tarjeta de crédito VISA □ INTERBANK □ AMERICAN EXPRESS □ 

CONTRAREEMBOLSO □ ADJUNTO CHEQUE □ 

Número de mí tarjeta I I I I I I I I I I I I I I TI 

Fecha de caducidad '. Firma, 

NOMBRE : 

DIRECCION _^ 

CIUDAD CP 

PROVINCIA TELEFONO 



(Mmp® 9 smÉs» (Miffl® 



O O 



• Vendo ordenador Philips 
MSX-II, VG-8235. Práctica- 
mente nuevo, con diskettes de 
programas, home-office, de- 
signer y MSX-DOS. Buen pre- 
cio. Llamar a Raúl al Tel.: (93) 
200 87 46. 



• Intercambio programas en 
cinta. Escribir a Juan Antonio 
López. Alvarado, 14. 08033 
Barcelona. O llamar al Tel. : (93) 
350 71 78. 



• Compro programas con re- 
lación a radio afición CW-RT- 
TY, libro de guarda, etc. Escri- 
bir a Alejandro García. Avda. 
Hilario Ruiz, 46. 15621 Cabañas 
(La Coruña). 



El 



• Vendo por cambio a MSX II 
ordenador Spectravideo SVI- 
728, impecable por 25.000 
ptas. Llamar a Rafael García al 
Tel.: (94) 493 30 58. 



• Compro programas de co- 
municaciones entre ordenado- 
res con modem. También de- 
seo contactar con interesados 
en el tema, sobre todo aque- 
llos que dispongan de modem. 
Escribir a Manuel López Cues- 
ta. Puentelarra, 18. 28031 Ma- 
drid. 



El 



• Vendo ordenador Spectravi- 
deo SVI-328, Superexpander 
605 B, dos unidades de disco 
DC/DD e impresora Seikosha, 
cable y tarjeta Centronics. To- 
do, en perfecto estado, por el 



50% de su valor según factura 
de compra. Escribir a Jacinto 
Moreno Aguilar. Avda. de Cá- 
diz, 10. 14009 Córdoba. O lla- 
mar al Tel.: 29 90 63. 



• Vendo ordenador SVI-728, 
nuevo, por 25.000 ptas. Escri- 
bir a Javier Pérez. Joan Bardina, 
17. 08830 Sant Boi (Barcelona). 



• Vendo juegos para MSX. Es- 
cribir a Luis Montero Campos. 
Extraradio, s/n. 16740 La Al- 
marcha (Cuenca). 



• Intercambio programas. Es- 
cribir a Juan Sánchez Sevilla. 
Batalla del Salado, 55. Tarifa 
(Cádiz). O llamar al Tel.: (965) 
68 49 89. 



• Vendo grabadora Sanyo M- 
1110 con varios juegos, para 
comprar unidad de disco. Pre- 
cio razonable. Interesados es- 
cribir a Santi Sales. Avda. Ata- 
razanas, 11. 08001 Barcelona. 



• Compro unidad de disco de 
3.5 pulgadas para MSX. Tam- 
bién intercambio programas 
de todo tipo. Escribir a Fran- 
cisco Gimeno Carbonel. Ribe- 
ra, 19. Silla (Valencia). O llamar 
al Tel.: 120 10 74. 



• Vendo Philips VG-8010 con 
varios programas, interface 
Centronics, ampliación de 



64K, cassette, cables y manua- 
les, todo por 22.000 ptas. Lla- 
mar a Javier Torres al Tel. : (9 1 ) 
204 43 15. 



• Cambio juego para ordena- 
dor SVI-328. Interesados es- 
cribir a Jorge Carbonell Diaz. 
Paseo de la Chopera, 31. 28045 
Madrid. O llamar al Tel.: (91) 
473 56 57. 



• Vendo diversos juegos. Lla- 
mar al Tel.: (987) 41 26 95, pre- 
guntar por Alberto. O al Tel.: 
(987) 41 05 30, preguntar por 
David. 




• Vendo Superexpander SVI- 
605A, monitor en fósforo ver- 
de, cartucho de 80 col., tableta 
gráfica y ordeandor SVI-328 
con cassette. Regalo varios 
programas de aplicación. Inte- 
resados contactar con Venan- 
cio Gancedo. Avda. Valde- 
cilla, 27. 3901 1 Santander (Can- 
tabria). O llamar al Tel.: (942) 
33 98 69. 



58 MSX 




• Vendo ordenador Philips 
VG-8000, con manuales en 
castellano, cables de cone- 
xión, programas y varias revis- 
tas. Todo por 37.000 ptas. 
(negociables). Escribir a Fer- 
nando Alaban Albero. Guada- 
lupe, 13. Villena (Alicante). O 
llamar al Tel.: (965) 80 38 33. 



• VENDO videojuegos, regalo 
dos cartuchos a un precio inte- 
resante. Vendo Quickshot n o 
cambio por juegos. Estoy inte- 
resado en una ampliación de 
memoria de 64K. Escribir a 
Martín López Corredoira. Polí- 
gono del Ceao, 71. Lugo. 



• Cambio programas para 
MSX-2, sólo en disco. Interesa- 
dos escribir a Jordi Tuques 
Raimat, Alfred Perenya, 43. 
25004 Lleida. O llamar al Tel.: 
(973) 23 52 61. 



• Vendo ordenador SVI-328, 
cassettes SVI-904 y monitor 
fósforo verde. Todo ello en 
perfecto estado. Adjunto ma- 
nual de uso, manual de refe- 
rencia BASIC y numerosas re- 
vistas y programas. Todo por 
30.000 ptas. Interesados con- 
tactar con Arturo Carnicer en 
el Tel.: (93) 317 15 22. 



• VENDO urgente ordenador 
SVI-328 MKII, data cassette 
SVI-904, 5 juegos y más de 40 
programas y joystick Quicks- 
hot II. Todo en perfecto estado 
y por 38.000 ptas. Llamar a Pe- 
dro Luis Gomis Faus al Tel.: 
(96) 241 43 64. 



• CLUB MSX por carta y teléfo- 
no. Suministramos la más re- 
ciente información sobre pro- 
gramas y periféricos. ¡No pier- 
das la onda! Preguntar por Juan 
Luis al Tel.: (948) 23 63 85 o por 
Ignacio al Tel.: (948) 24 85 22. 
Llamar de 19 a 21h. 



ISI 



• INTERCAMBIO juegos para 
MSX, escribir a Juan Manuel 
Navarro Silva. Poeta Más y Ros. 
46022 Valencia. 



• INTERCAMBIO programas, 
juegos, gestión y aplicaciones. 
Escribir a Enrique Navarro. 
Primavera, 37, 2-1. Hospitalet 
(Barcelona). 



• Vendo programas en disket- 
te de todo tipo. Contactar con 
Adolfo G. Barberá. Dr. Sanchis 
Bergón, 5-8. 46008 Valencia. 
Tel.: 331 26 57. 



• Vendo ordenador MSX Hit- 
Bit 101P, con ampliación de 
memoria de 64K, por 27.000 
ptas. Llamar a Antonio Monte- 
ro Batle al Tel.: (93) 652 16 94. 



• VENDO SVI-328 (80K) con 
cassette, interface para impre- 
sora, dos joysticks, cartucho 
de juegos y programas diver- 
sos. Regalo libros y revistas 
sobre este ordenador. Todo 
por 35.000 ptas. Llamar a José 
María Sánchez Benito al Tel.: 
(985) 57 45 14 o escribir a: Se- 



bastián Elcano, 10, 2-B. La Luz- 
Avilés, 33400 (Asturias). 



• CAMBIO AmstradCPC-6 128 
con todo lo que trae y 2 discos 
con programas, por un SVI 738 
X'press de MSX con pantalla o 
por un MSX de la II Genera- 
ción. Escribir a Miguel Fernán- 
dez. Plaza Gutiérrez. Semprún, 
1, 1-A. 47012 Valladolid o lla- 
mar al Tel. 39 81 60. 



• Club LSD Printer. Todo en 
software y hardware para los 
usuarios del MSX. Intercambio 
programas. Apartado 2093. 
Murcia. 



• Vendo Philips VG-8010 en 
perfectas condiciones, con só- 
lo cinco meses. Adjunto ma- 
nuales. Todo por 25.000 ptas. 
Escribir o llamar a Ramón Ote- 
ro Pulin. Costaña, 8. 27500 
Chantada (Lugo). Tel.: (982) 
44 05 15. 



• Intercambio programas. 
Contactar con H.M.P. Gral. 
Franco, 53. Los Cristianos II, 
2.°-23. Los Cristianos (Teneri- 
fe). 



• Vendo programas por haber 
vendido el ordenador. Llamar 
a Juan al Tel. : (957) 27 1 1 80 (de 
3 a 5). 



MSX 59 




maquina 




'n esta ocasión vamos a 
Zabordar el problema de di- 
Jseñar una rutina que nos 
puede resultar útil, especialmente 
para buscar «pokes» para juegos. 
Se trata de una rutina para buscar 
en la memoria las direcciones en 
que se encuentra una determina- 
da secuencia de códigos. Así, si 
queremos averiguar dónde hay 
alguna llamada a la subrutina del 
sistema operativo encargada de 
imprimir un carácter (00A2H), la 
secuencia a buscar sería la forma- 
da por los códigos hexadecimales 
CD, A2 y 00. 

Además, vamos a empezar a 
acostumbrarnos a realizar ordino- 
gramas o diagramas de flujo. Es- 
tos son esos dibujitos formados 
por líneas, flechas, rombos, rec- 
tángulos, palabras, etc., que gene- 
ralmente nadie entiende, pero que 
en realidad son bastante sencillos 
de descifrar, y muy útiles para de- 
sarrollar nuestras ideas y conver- 
tirlas en programas, no sólo en có- 
digo máquina sino también en 




En esta ocasión sólo utilizare- 
mos cuatro símbolos. El rectángu- 
lo normal indica una acción sim- 
ple, que en código máquina se tra- 
ducirá normalmente en una o 
unas pocas instrucciones. El rec- 
tángulo con lados redondeados 
indica una etiqueta de comienzo 
de programa o de fin de progra- 
ma. El rectángulo con los lados 
verticales dobles representa una 
acción compleja compuesta por 
muchas instrucciones, y que ge- 
neralmente se traduce como una 
llamada a subrutina (o, en PAS- 
CAL, un procedimiento). Por últi- 
mo, los rombos indican una toma 
de decisión, que puede seguir una 
u otra bifurcación según sea la 
respuesta a la pregunta indicada 
en su interior. En código máquina 
se traducen generalmente en una 
instrucción condicional. 

Existen diversas formas de bus- 
car una cadena en memoria, algu- 
nas muy rápidas en su ejecución, 
otras muy cortas. Nosotros hemos 
elegido una que sea comprensi- 
ble fácilmente para los que siguen 
este curso. 

De manera intuitiva podemos 
definir claramente el proceso que 
seguiremos para buscar una se- 
cuencia de códigos: buscamos el 
primero; cuando lo encontramos, 
miramos si a continuación se halla 
el segundo, y así hasta completar 
la secuencia. Si conseguimos 
completarla, imprimimos en pan- 
talla la dirección del primer códi- 
go, pero si nos falla alguno de los 
caracteres de la secuencia, reto- 
mamos la dirección del primer có- 
digo, la aumentamos en uno y se- 
guimos buscando. 

El ordinograma adjunto refleja 
este mismo proceso con un análi- 
sis más detallado. Nuestra rutina 
nos va a permitir decidir a partir de 
qué dirección de memoria empe- 
zamos a buscar, y hasta cuál otra 



código máquina 



CCOMIENZO ^ 
PUNTERO DE MEMORIA 



COMIENZO 



PRESERVA PUNTERO 
DE ME MORIA 

1 

PUNTERO DE CADENA 
S PRIMERO 



CONTADOR = NUMERO 
DE CARACTERES 



CARGA ACUMULADOR CON 
( PUN TERO DE CADENA ) 



COMPARA CON 
( PUNTERO DE MEMORIA ) 



INCREMENTA 
PUNTERO DE MEMORIA 




INCREMENTA 
PUNTERO DE CADENA 

DECREMENTA 
CONTADOR 




RECUPERA 
PUNTERO DE MEMOR I A 



RECUPERA 
PUNTERO DE MEMORIA 



TmprTme 

:j PUNTERO DE MEMORIA 



ESPERA 


PULSACION 


DE 


TECLA 




INCREMENTA 
PUNTERO DE MEMORIA 




continuamos la búsqueda. 

Podremos buscar cualquier se- 
cuencia formada por entre uno y 
255 caracteres. Además, para que 
nos dé tiempo a apuntar las direc- 
ciones impresas en la pantalla, 
tras la rutina de impresión espera- 
remos a que se pulse una tecla. 
Por último, hemos previsto la posi- 



bilidad de abandonar la búsqueda 
pulsando la tecla 

Vamos a ver el diagrama de flu- 
jo paso a paso. Dado que tenemos 
que buscar caracteres en memo- 
ria y compararlos con los de la se- 
cuencia, también guardados en 
memoria, necesitaremos utilizar 
dos punteros. Uno de ellos apun- 



tará al carácter de la secuencia 
que estamos buscando, y le lla- 
maremos PUNTERO DE CADENA. 
El otro apuntará a la dirección de 
memoria por la que ve la búsque- 
da, y le llamaremos PUNTERO DE 
MEMORIA. 

Como véis, lo primero que ha- 
cemos es inícializar el PUNTERO 
DE MEMORIA con la dirección en 
la que queremos comenzar la 
búsqueda. Esta dirección nos inte- 
resa guardarla en el Stack (con 
una instrucción PUSH), ya que, si 
localizamos la secuencia, es la 
que deberemos imprimir, pero el 
proceso de búsqueda hará que 
esté apuntando a la dirección si- 
guiente al último carácter de la se- 
cuencia. A continuación inicializa- 
mos el PUNTERO DE CADENA, y 
además inicializamos un contador 
con el número de códigos que for- 
man la secuencia a buscar. Este 
contador nos permitirá saber 
cuándo hemos completado la ca- 
dena. 




\ N ^^« ^^S^S^ WBBBi 




62 MSX 



Ahora empezamos a buscar. 
Cargamos al acumulador con el 
código al que apunta el PUNTERO 
DE CADENA (primer código de la 
secuencia) y lo comparamos con 
el código al que apunta el PUNTE- 
RO DE MEMORIA. A continuación 
preparamos la siguiente búsque- 
da incrementando el PUNTERO 
DE MEMORIA y verificamos si am- 
bos códigos eran iguales. Eviden- 
temente, si no lo eran deberemos 
continuar con el siguiente carácter 
en memoria. Aquí observaréis 
que, de forma aparentemente ab- 
surda, recuperamos del stack el 
PUNTERO DE MEMORIA y lo in- 
crementamos, cosa que ya había- 
mos hecho tras la comparación. 
Efectivamente, si la comparación 




f ANUNCIOS GRATUITOS 

1 Todos los anuncios (compras, ventas, cambios o comunicaciones de clubs de usuarios, etc ) que van en esta sección 

■ deben tener un máximo de cuarenta palabras Con el fin de facilitar la transcripción de los anuncios hemos recuadrado 
I cuarenta espacios para que en cada uno vaya una palabra Después, recortar y mandar a 

ANUNCIOS GRATUITOS 

C/ Bravo Murillo. 377. 5 o A 
28020 MADRID 



L 



código máquina 



16 HIDTH 40 

21 CLEAR 200.ÍHEE00 

30 60SU8 200 

40 INPUT'Longitud de la secuencia" ;L: IF 

L<0 OR L>255 THEN 40 
50 INPUT'Direccion de coeienzo';C$:IF LE 

N(C$)<>4 THEN 50 
60 INPUT'Direcion final" ¡F$:IF LEN(F$)<> 

4 THEN 60 

70 POKE &HEE5F ,VAL ( "iH"+RIGHT$ (C$ ,2) ) 
80 POKE IHEE60, VAL ("IH"+LEFT$ (C$,2)) 
90 POKE iHEE61,VAL("iH*+RI6HT$(F$,2>) 
100 POKE iHEE62,VAL("&H'+LEFT$(F$,2)) 
110 POKE iHEE63,L 
120 FOR N=! TO l 

130 PRINT'Introduce el carácter 
140 INPUT" :";V 
150 POKE IHEE63+N,V 
160 NEKT 

170 DEF USR=ltHEE00 
180 A=USR(0) 
190 END 

280 FOR N=0 TO W5E 
210 READ V$:V=VAL("ltH"+V$) 
220 POKE ÍHEE00+N,V 
230 NEXT:RETURN 
240 DATA 2A,5F,EE: 
250 



•N' 



260 DATA E5: 
270 DATA 11,64,EE; 
280 DATA 3A,63,EE: 
290 DATA 47: ' LD B,A 

300 

310 DATA 1A: 
320 DATA BE: 
330 DATA 23: 



LD HL,(COHIEN) 
SIGUE: 
PUSH HL 
LD DE,PRIHER 
LD A,(NUNCAR) 



340 DATA 28,83: 
350 DATA El: 
360 DATA 18,18: 
370 

380 DATA 13: 
390 DATA 10,F5: 
400 DATA El : 
410 DATA CD,3A,EE: 
420 DATA CD,9F,00: 
430 DATA F6,20: 
440 DATA FE ,66: 
450 DATA 28, 0C: 



OTRO: 
LD A, (DE) 
CP (HL) 
INC HL 
JR Z , IGUAL 
POP HL 
JR FIN 
IGUAL: 
INC DE 
DJNZ OTRO 
POP HL 
CALL PRINT 
CALL 009FH 
OR 20H 
CP 66H 
JR Z, SALIR 



460 

470 DATA 
480 DATA 
490 DATA 
500 DATA 
510 DATA 
520 DATA 
530 DATA 
540 

550 DATA 
560 DATA 
570 DATA 
588 DATA 
590 DATA 
600 

610 DATA 
620 DATA 
630 DATA 
640 DATA 
650 DATA 
660 DATA 
670 DATA 
680 DATA 
690 DATA 
700 

710 DATA 
720 DATA 
730 DATA 
740 DATA 
750 DATA 
760 DATA 
770 DATA 
780 

790 DATA 
BO0 DATA 
810 DATA 
820 DATA 
830 DATA 
840 DATA 
850 DATA 
860 
870 
880 



910 
920 
930 



23: 
E5: 
A7: 

ED,5B,61,EE: 

ED,52r 

El: 

38, D4: 

3E,0D: 

CD,A2,00: 

3E.6A: 

CD,A2,00: 

C9: 



E5: 
7C: 

CD,4A,EE: 
7D: 

CD,4A,EE: 

3E,20: 

CD,A2,00: 

El: 

C9: 

F5: 
0F: 
0F: 
0F: 
0F: 

CD, 53,EE: 
Fl: 

E6,0F: 
C6,90: 

27: 

CE, 40: 

27: 

CD,A2,00: 

C9: 



FIN: 
INC HL 
PUSH HL 
AND A 

LD DE, (FINAL) 
SBC HL , DE 
POP HL 
JR C, SIGUE 
SALIR: 
LD A,0DH 
CALL 00A2H 
LD A,0AH 
CALL 00A2H 
RET 

PRINT: 
PUSH HL 
LD A,H 
CALL HEKNUH 
LD A,L 

CALL HEKNUH 
LD A,20H 
CALL 00A2H 
POP HL 
RET 

HEKNUH: 

PUSH AF 

RRCA 

RRCA 

RRCA 

RRCA 

CALL HEK2 
POP AF 
HEK2: 
AND 0FH 
ADD A,90H 
DAA 

ADC A.40H 
DAA 

CALL 00A2H 
RET 

COHIEN: 
DEFS 2 
FINAL: 
DEFS 2: 
NUHCAR: 
DEFS 1: 
PRIMER: 
DEFS 255 



64 MSX 




era con el primer código de la se- 
cuencia, estas acciones son igua- 
les, pero si vamos por, por ejem- 
plo, el quinto código de la secuen- 
cia, es necesario recuperar dicho 
puntero del stack. 

En el caso de que no se produ- 
jera la igualdad, tras incrementar 
el PUNTERO DE MEMORIA pasa- 



mos a verificar que no hemos al- 
canzado la última dirección a bus- 
car. Si no es así, volvemos al co- 
mienzo, y en caso contrario he- 
mos terminado la búsqueda. 

Cuando se produzca la igual- 
dad, tendremos que ver si el si- 
guiente código en memoria coin- 
cide con el siguiente de la secuen- 



cia. Como ya hemos incrementa- 
do el PUNTERO DE MEMORIA, 
nos queda incrementar el PUNTE- 
RO DE CADENA y decrementar el 
contador. Como cada vez que un 
código consecutivo coincide con 
la secuencia decrementamos el 
contador, cuando hallemos la se- 
cuencia completa éste valdrá ce- 
ro. Por tanto, si no es cero segui- 
mos la búsqueda con el siguiente 
código de la secuencia, pero si 
es cero recuperamos del stack la 
dirección de memoria en que se 
encuentra el código que coincide 
con el primero de la secuencia. 

Tras la impresión, llamamos a 
una rutina del sistema operativo 
(en la dirección 009FH) que espe- 
ra a que pulsemos una tecla y nos 
devuelve en el acumulador el có- 
digo ASCII correspondiente a la 
tecla pulsada. Si la tecla pulsada 
era la «F», salimos directamente 
de la rutina. Si no, incrementamos 
el PUNTERO DE MEMORIA y verifi- 
camos que no hayamos llegado al 
final. 

Como podéis ver, el diagrama 
de flujo expresa ordenadamente 
este proceso. Cada toma de deci- 
sión (rombo) señala los caminos 
posibles con el SI y NO. 

El listado BASIC adjunto se en- 
carga de introducir en memoria 
los códigos correspondientes a la 
rutina ya ensamblada, si bien en 
sentencias REM indicamos los 
mnemónicos correspondientes. 
Una vez «pokeados» los códigos, 
el programa pide la longitud de la 
secuencia a buscar, la dirección 
de comienzo de búsqueda (en he- 
xadecimal, con cuatro dígitos y sin 
el prefijo «&H»), la dirección de fi- 
nal de búsqueda (en hexadeci- 
mal, con cuatro dígitos y sin el pre- 
fijo «&H») y luego nos pide los có- 
digos que forman la secuencia, 
«pokeando» todo esto en la me- 
moria en los sitios indicados. 



MSX 65 



Rincón 



jdel lector. 



MAPA DE MEMORIA DEL 

SVI-328 

Mi pregunta es si pueden publi- 
car alguna lista, con el mapa de 
memoria del SVI-328 y/o algunas 
direcciones más que sean de utili- 
dad. 

Jorge Cortés Barea 
Barcelona 



Ultimamente, venimos publican- 
do toda una serie de temas diversos, 
dentro de nuestra sección habitual 
dedicada al SVI-328. 

En el número 19 (del mes de di- 
ciembre), se publicó el mapa de la 
ROM, los ports y las variables del 
sistema de este ordenador. 

En el número 20 (del mes de ene- 
ro), se inicia el análisis de los ports 
del ordenador y próximamente, nos 
dedicaremos a explicar detallada- 
mente el resto de las características 
del ordenador. 



COMPATIBILIDAD ENTRE 
MSX Y SVI-328 

Desearía saber si con el adapta- 
dor de MSX para Spectravideo, 
también tendría la compatibilidad 
con los periféricos del sistema y si 
comentareis dicho periférico en 
la revista. 

Abelardo Jiménez 
Barcelona 

Aún es pronto para determinar 
con certeza, si el adaptador de MSX 
de Spectravideo convierten al SVI- 
328 en MSX. Tenemos entendido 
que sólo hace compatible los pro- 
gramas en cartucho, manteniendo 
su propia configuración. 

De cualquier manera, nos hemos 
puesto en contacto con CCG y pron- 
to tendremos el adaptador para pro- 
barlo. 

Si deseas más información sobre 



este adaptador, puedes ponerte en 
contacto con CCG, llamando al Tel.: 
(94) 462 46 52. 



SOFTWARE PARA MSX 



Me dirijo a Vds. para solicitarles 
la máxima información de que 
dispongan sobre el software MSX 
existente en el mercado. 

También desearía me informa- 
sen sobre la diferencia entre el 
cartucho y el cassette. 

Francisco Baeza Galindo 
Almería 

En el número 23 de MSX Magazi- 
ne, que saldrá en el mes de abril, pu- 
blicaremos un guía de programas, 
donde aparecerán todos los que he- 
mos comentado a lo largo de todos 
estos meses. A su vez, para ese mis- 
mo número, tenemos pensado reali- 
zar una completa guía de libros, sin 
embargo, esta última opción está 
por determinar. 

En la guía de software, haremos 
una breve introducción a todo lo que 
ha afectado el mercado de progra- 
mas a lo largo de estos dos años, y 
explicaremos las diferencias funda- 
mentales entre todos y cada uno de 
los soportes de los programas' 



PROBLEMAS CON LA 
UNIDAD DE DISCOS 

Poseo una unidad de discos 
Philips VY 001 0 y varios diskettes. 
Todos, a excepción de uno de 
ellos, funcionan bien. Sin embar- 
go, el defectuoso no lo puedo car- 
gar de ninguna forma, ni desde el 
MSX-DISK BASIC, ni desde el MS- 
DOS. Al intentar la operación, la 
unidad de discos gira sin parar y 
finaliza con el mensaje de, Disk I/ 
O Error. Mi pregunta es, ¿estará 
estropeado el diskette debido al 
mal uso o por el contrario será de- 



bido al uso incorrecto de alguna 
instrucción? ¿Podré solucionarlo 
sin perder la información que en 
él tengo almacenada? ¿Tendré 
que formatearlo? 

Crisendo García González 
Santander 




Desde luego, si de todos los dis- 
cos que posees sólo hay uno que no 
carga, automáticamente habrá que 
descartar el uso indebido de cual- 
quier instrucción puesto, que como 
me indicas, el resto de los discos 
cargan bien. Principalmente, cree- 
mos que se deba a que haya un de- 
fecto en el disco, lo que imposibilita 
su lectura. Este defecto puede ser 
debido a cualquier tipo de sucie- 
dad, polvo, rayado, etc., lo que hará 
el disco difícil de leer aún por cual- 
quier programa que lea sectores. 

Sin embargo, como suele decirse, 
«la esperanza es lo último que se 
pierde». En el número 17 de MSX 
Magazine (del mes de octubre), en 
la sección de Trucos (pág. 65) publi- 
camos un corto programa que per- 
mite recuperar la información de un 
disco defectuoso. Es una buena 
ocasión para probarlo ¿no crees? 

De cualquier manera, siempre 
queda el último recurso, formatear el 
disco. Sin embargo, esto significa 
que perderás toda la información 
que tengas grabada en él. 



66 MSX 



Catálogo de Software 

para 

ordenadores 
personales 




Í8í* INF?*!!* 




cátá^ 




Todo el Software disponible en el 
mercado reunido en un catálogo 
de 800 fichas 




1 . a ENTREGA 
550 FICHAS 
^ICHER^ 

Resto en dos entregas 
trimestrales de 1 50 fichas 
cada una 



PRECIO TOTAL DE LA SUSCRIPCION 8.000 PTAS. 

COPIE O RECORTE ESTE CUPON DE PEDIDO 



CUPON DE PEDIDO 

SOLICITE HOY MISMO EL 
CATALOGO DE SOFTWARE A: 

Bravo Murillo, 377, 5.° A 
28020 MADRID 

O EN CONCESIONARIOS IBM 



El importe lo abonaré POR CHEQUE □ CONTRA REEMBOLSO □ CON MI 
TARJETA DE CREDITO □ 

Cargue 8.000 ptas. a mi tarjeta American Express □ Visa □ Interbank □ 
Número de mi tarjeta Mllll 

NOMBRE 

CALLE 

CIUDAD 



m 



TTT 



C. P. 



PROVINCIA 

reí: CATALOGO DE SOFTWARE 



TELEFONO 



CS-2 



JSüf^FL v conversiones 

■ i) binario. ^590. 




V unciones ^tínicas. 
Celdas solares u 



5390- 







- • 590 " f0 WPW A M0+2V 
Funciones ««""^{«rucas 



No» cW , n " d C c dcc>ma\ e s desea 
c \ núnieto ac _ 
pantana. 



Usa dos V»» 2 9 Q 0 ptas- 



«5 pasos ? c £ sian te. 
^ ^^I l ae decisiones. 
Contorna^ ■ ifica s 
A4 funciones o 

y 10 dígaos. 590 ptas- 



^^^Sp^S^ 89 ELC0 E 

T e«s,20A 76 56v 20 0 V 7 VoBlO